Obtenha excelentes resultados de pesquisa para o seu conteúdo usando o mesmo mecanismo de pesquisa que alimenta o Hacker News.

Uma pesquisa eficiente é um recurso vital da maioria dos sites e aplicativos da Web modernos. Usando a API Algolia, você pode implementar uma poderosa funcionalidade de pesquisa que melhora significativamente a experiência do usuário.

Esteja você criando um blog, uma plataforma de comércio eletrônico ou qualquer aplicativo que precise de pesquisa, o Node.js é uma poderosa tecnologia da Web para fazer isso. Algolia fornece uma ótima plataforma para construir um sistema de pesquisa robusto.

O que é Algolia?

Algolia é um mecanismo de pesquisa hospedado que fornece uma plataforma e ferramentas para implementar pesquisas eficientes e flexíveis em sites e aplicativos. Algolia tem dois componentes: pesquisa e análise.

Usando Algolia, você pode criar ótimas experiências de pesquisa para seus usuários e, em seguida, usar ferramentas para analisar e obter insights significativos de seu aplicativo.

instagram viewer

Algolia também oferece uma API de desenvolvedor e SDKs de suporte para permitir a integração perfeita com aplicativos criados em vários idiomas. Isso dá o duplo benefício de um API para poder de baixo nível e um SDK para facilitar o desenvolvimento de comportamento comum.

Algolia exige que você se inscreva em uma conta para integrar sua pesquisa em seus aplicativos Node.js. Acessar Algolia.com para se inscrever gratuitamente.

Como Obter Credenciais da API Algolia Developer

Para implementar a pesquisa do Algolia, você precisa criar um aplicativo para o seu projeto. Quando você se inscreve, o Algolia cria um novo aplicativo chamado Meu primeiro aplicativo para você, e você pode optar por usá-lo ou criar um novo.

Obter suas credenciais de API é muito fácil no painel. Há uma lista de opções, incluindo Chaves de API:

Quando você clicar em Chaves de API, você verá uma página com credenciais diferentes. Tudo o que você precisa para a integração básica são os ID do aplicativo e Chave de API do administrador.

Agora que você configurou um aplicativo Algolia, está pronto para integrá-lo ao seu aplicativo Node.js.

Implementando a funcionalidade de pesquisa com Algolia

Algolia oferece um SDK cliente para uma ampla variedade de linguagens de programação, incluindo Node.js, que continua sendo a melhor escolha para JavaScript do lado do servidor. O SDK do Node.js facilita o uso do Algolia com JavaScript.

Comece instalando o algoliasearch pacote npm:

npm instalar algoliasearch

A próxima etapa é inicializar o cliente em seu projeto. Em um arquivo chamado algolia.js, importar algoliasearch, inicialize um novo cliente usando suas credenciais de API:

const Algolia = exigir("algoliasearch")

const ALGOLIA_APP_ID = 'SEU_APPLICATION_ID' || process.env. ALGOLIA_APP_ID
const ALGOLIA_ADMIN_KEY = 'SEU_ADMIN_KEY' || process.env. ALGOLIA_ADMIN_KEY

const algoliaCliente = novo Algolia (ALGOLIA_APP_ID, ALGOLIA_ADMIN_KEY);

Você usará a instância do cliente Algolia para outras operações em seu projeto.

Algolia usa índices de pesquisa para armazenar dados que você pode pesquisar. Um índice de pesquisa é semelhante a uma tabela de banco de dados que você pode consultar para obter dados. Depois de inicializar seu cliente, você precisa criar um índice para armazenar dados. Por exemplo, veja como você pode criar um índice para armazenar carros:

const carIndex = algoliaClient.initIndex("carros")

Esta linha cria um índice em seu aplicativo chamado carros e armazena uma referência a ele no indice de carros variável.

Em seguida, você deve adicionar dados ao seu índice para poder pesquisá-los. Você deve sempre preparar seus dados como uma matriz de objetos e garantir que cada objeto tenha o ID do objeto propriedade para identificá-lo exclusivamente.

Escreva algum código para definir os dados que deseja adicionar ao índice Algoila:

const carros = [
{ ID do objeto: '1', marca: 'Toyota', modelo: 'Camry', ano: '2022', cor: 'Prata' },
{ ID do objeto: '2', marca: 'Honda', modelo: 'Cívico', ano: '2021', cor: 'Vermelho' },
{ ID do objeto: '3', marca: 'Ford', modelo: 'Mustang', ano: '2020', cor: 'Preto' },
{ ID do objeto: '4', marca: 'Chevrolet', modelo: 'Corveta', ano: '2023', cor: 'Amarelo' },
{ ID do objeto: '5', marca: 'BMW', modelo: 'X5', ano: '2022', cor: 'Branco' }
];

Algolia usa o salvarobjetos método para adicionar dados a um índice específico. Esta função aceita uma lista de objetos como argumento e retorna uma promessa. Você pode usar o aguardam palavra-chave com ele se precisar usar seus dados de saída.

Veja como você adicionaria todos os carros no carros matriz para o indice de carros em seu aplicativo Algolia:

carsIndex.saveObjects (carros)

Ao executar esta função, retorne ao painel do aplicativo no Algolia e role para baixo até os índices. você encontrará o carros indexe lá e, ao clicar nele, você verá seus dados.

Agora que você tem dados em seu índice, pode consultá-lo em busca de dados usando vários métodos de pesquisa fornecidos pela Algolia.

Para consultar dados do carros índice, você pode usar o procurar método do SDK e passar uma consulta de pesquisa para ele como um argumento. A função trata a consulta como uma expressão regular e retorna todas as correspondências encontradas no índice.

O código a seguir define uma função para pesquisar o índice de carros usando uma consulta e imprimir os resultados.

const pesquisarCarro = assíncrono (consulta) => {
const dados = aguardam carsIndex.search (consulta)
console.log (data.hits)
}

searchCar('honda')

Ao executar este código, o programa imprimirá o objeto carro que possui um campo cujo valor corresponde à palavra honda. A saída será algo como isto:

Você também pode pesquisar valores que aparecem em outras propriedades dos objetos, e a função retornará todas as correspondências que encontrar.

Algolia permite que você torne as propriedades pesquisáveis ​​ou não. Por exemplo, para fazer apenas marca e modelo pesquisável no índice de carros, você pode usar o definirConfigurações função para configurar a restrição como o código abaixo demonstra.

carsIndex.setSettings({
searchableAttributes: ['marca', 'modelo'],
})

Isso faz com que todas as outras propriedades não sejam pesquisáveis, portanto, as consultas de pesquisa serão executadas apenas na marca e modelo propriedades. A exclusão de propriedades é útil quando você está criando produtos do mundo real, nos quais precisa garantir melhores práticas de segurança e impedir que os usuários acessem dados privados por meio de pesquisa.

Criando funcionalidade de pesquisa eficiente com Algolia

Algolia é uma tecnologia muito poderosa e é uma das melhores escolhas para a implementação de pesquisas ultrarrápidas em aplicativos da web. Também é tolerante a erros de digitação e até permite que você ajuste o nível de tolerância a erros de digitação em sua pesquisa.

Você sempre pode confiar no desempenho do mecanismo de pesquisa em seu aplicativo Node.js ao implementá-lo com Algolia. Você pode tentar implementar a pesquisa em um aplicativo do mundo real e navegar pela documentação para descobrir mais sobre o Algolia.