Ottieni ottimi risultati di ricerca per i tuoi contenuti utilizzando lo stesso motore di ricerca utilizzato da Hacker News.

Una ricerca efficiente è una caratteristica vitale della maggior parte delle app e dei siti Web moderni. Utilizzando l'API Algolia, puoi implementare potenti funzionalità di ricerca che migliorano notevolmente l'esperienza dell'utente.

Che tu stia costruendo un blog, una piattaforma di e-commerce o qualsiasi applicazione che richieda la ricerca, Node.js è una potente tecnologia web con cui farlo. Algolia ti offre un'ottima piattaforma su cui costruire un solido sistema di ricerca.

Cos'è l'Algolia?

Algolia è un motore di ricerca ospitato che fornisce una piattaforma e strumenti per implementare ricerche efficienti e flessibili su siti Web e applicazioni. L'Algolia ha due componenti: ricerca e analisi.

Utilizzando Algolia, puoi creare fantastiche esperienze di ricerca per i tuoi utenti e quindi utilizzare strumenti per analizzare e trarre informazioni significative dalla tua applicazione.

instagram viewer

Algolia offre anche un'API per sviluppatori e SDK di supporto per consentire una perfetta integrazione con le app create in vari linguaggi. Questo offre il duplice vantaggio di un API per potenza di basso livello e un SDK per uno sviluppo più semplice del comportamento comune.

Algolia richiede la registrazione di un account per integrare la sua ricerca nelle tue app Node.js. Collegarsi a Algolia.com per iscriversi gratuitamente.

Come ottenere le credenziali API per sviluppatori Algolia

Per implementare la ricerca in Algolia, devi creare un'applicazione per il tuo progetto. Quando ti registri, Algolia crea una nuova applicazione chiamata La mia prima applicazione per te e puoi scegliere di usarlo o crearne uno nuovo.

Ottenere le tue credenziali API è molto semplice dalla dashboard. C'è un elenco di opzioni tra cui Chiavi API:

Quando fai clic su Chiavi API, vedrai una pagina con credenziali diverse. Tutto ciò di cui hai bisogno per l'integrazione di base sono i file ID applicazione E Chiave API amministratore.

Ora che hai configurato un'applicazione Algolia, sei pronto per integrarla nella tua app Node.js.

Implementazione della funzionalità di ricerca con Algolia

Algolia offre un SDK client per un'ampia gamma di linguaggi di programmazione, incluso Node.js che rimane la scelta migliore per JavaScript lato server. L'SDK Node.js semplifica l'utilizzo di Algolia con JavaScript.

Inizia installando il file algoliasearch pacchetto npm:

npm install algoliasearch

Il passaggio successivo consiste nell'inizializzare il client nel progetto. In un file chiamato algolia.js, importare algoliasearch, quindi inizializza un nuovo client utilizzando le tue credenziali API:

cost Algolia = richiedere("algoliasearch")

cost ALGOLIA_APP_ID = "TUA_ID_APPLICAZIONE" || processo.env. ID_APP_ALGOLIA
cost ALGOLIA_ADMIN_KEY = "LA TUA_ADMIN_CHIAVE" || processo.env. ALGOLIA_ADMIN_KEY

cost algoliaClient = nuovo Algolia (ALGOLIA_APP_ID, ALGOLIA_ADMIN_KEY);

Utilizzerai l'istanza del client Algolia per ulteriori operazioni nel tuo progetto.

Algolia utilizza gli indici di ricerca per archiviare i dati che è possibile cercare. Un indice di ricerca è simile a una tabella di database da cui è possibile interrogare per recuperare i dati. Dopo aver inizializzato il client, è necessario creare un indice per archiviare i dati. Ad esempio, ecco come potresti creare un indice per archiviare le auto:

cost carsIndex = algoliaClient.initIndex("automobili")

Questa riga crea un indice nella tua applicazione chiamato automobili e memorizza un riferimento ad esso nel file autoIndice variabile.

Successivamente, dovresti aggiungere dati al tuo indice in modo da poterlo cercare. Dovresti sempre preparare i tuoi dati come un array di oggetti e assicurarti che ogni oggetto abbia il file oggettoID proprietà per identificarla univocamente.

Scrivi del codice per definire i dati che vuoi aggiungere all'indice Algoila:

cost automobili = [
{ oggettoID: '1', marca: "Toyota", modello: 'Camry', anno: '2022', colore: 'Argento' },
{ oggettoID: '2', marca: 'Honda', modello: 'Civico', anno: '2021', colore: 'Rosso' },
{ oggettoID: '3', marca: 'Guado', modello: 'Mustang', anno: '2020', colore: 'Nero' },
{ oggettoID: '4', marca: "Chevrolet", modello: 'Corvetta', anno: '2023', colore: 'Giallo' },
{ oggettoID: '5', marca: 'BMW', modello: 'X5', anno: '2022', colore: 'Bianco' }
];

L'Algolia usa il salvaOggetti metodo per aggiungere dati a un indice specifico. Questa funzione accetta un elenco di oggetti come argomento e restituisce una promessa. Puoi usare il aspetta parola chiave con esso se è necessario utilizzare i suoi dati di output.

Ecco come aggiungeresti tutte le auto nel file automobili matrice al autoIndice nella tua domanda per l'Algolia:

carsIndex.saveObjects (automobili)

Quando esegui questa funzione, torna al dashboard dell'applicazione su Algolia e scorri verso il basso fino agli indici. Troverai il automobili index lì e, quando fai clic su di esso, vedrai i suoi dati.

Ora che hai i dati nel tuo indice, puoi interrogarlo per i dati utilizzando vari metodi di ricerca forniti da Algolia.

Per interrogare i dati dal file automobili index, puoi usare il ricerca metodo dell'SDK e passargli una query di ricerca come argomento. La funzione tratta la query come un'espressione regolare e restituisce ogni corrispondenza trovata nell'indice.

Il codice seguente definisce una funzione per cercare l'indice delle auto utilizzando una query e stampare i risultati.

cost searchAuto = asincrono (interrogazione) => {
cost dati = aspetta carsIndex.search (interrogazione)
consolare.log (data.hit)
}

cercaAuto('honda')

Quando esegui questo codice, il programma stamperà l'oggetto auto che ha un campo il cui valore corrisponde alla parola Honda. L'output sarà simile a questo:

Puoi anche cercare valori che appaiono in altre proprietà degli oggetti e la funzione restituirà ogni corrispondenza che trova.

Algolia ti consente di rendere le proprietà ricercabili o meno. Ad esempio, fare solo marca E modello ricercabile nell'indice delle auto, è possibile utilizzare il setImpostazioni function per configurare la restrizione come illustrato nel codice seguente.

carsIndex.setSettings({
attributi ricercabili: ['marca', 'modello'],
})

Ciò rende non ricercabile ogni altra proprietà, quindi le query di ricerca verranno eseguite solo su marca E modello proprietà. L'esclusione delle proprietà è utile quando crei prodotti del mondo reale in cui devi assicurarti migliori pratiche di sicurezza e impedire agli utenti di accedere ai dati privati ​​tramite la ricerca.

Creazione di funzionalità di ricerca efficienti con Algolia

Algolia è una tecnologia molto potente ed è una delle migliori scelte per implementare la ricerca velocissima nelle applicazioni web. È anche tollerante alla battitura e ti consente persino di regolare il livello di tolleranza alla battitura nella tua ricerca.

Puoi sempre fidarti delle prestazioni del motore di ricerca nella tua applicazione Node.js quando lo implementi con Algolia. Puoi provare a implementare la ricerca in un'applicazione del mondo reale e sfogliare la documentazione per scoprire di più sull'Algolia.