Få fantastiska sökresultat för ditt innehåll med samma sökmotor som driver Hacker News.
En effektiv sökning är en viktig egenskap hos de flesta moderna webbappar och webbplatser. Med hjälp av Algolia API kan du implementera kraftfulla sökfunktioner som avsevärt förbättrar användarupplevelsen.
Oavsett om du bygger en blogg, e-handelsplattform eller vilken applikation som helst som behöver sökning, är Node.js en kraftfull webbteknologi att göra det med. Algolia ger dig en fantastisk plattform att bygga ett robust söksystem på.
Vad är Algolia?
Algolia är en värd sökmotor som ger dig en plattform och verktyg för att implementera effektiva och flexibla sökningar på webbplatser och applikationer. Algolia har två komponenter: sökning och analys.
Med Algolia kan du skapa fantastiska sökupplevelser för dina användare och sedan använda verktyg för att analysera och dra meningsfulla insikter från din applikation.
Algolia erbjuder också ett utvecklar-API och stödjande SDK: er för att möjliggöra sömlös integration med appar byggda på olika språk. Detta ger den dubbla fördelen med en
API för lågnivåkraft och en SDK för enklare utveckling av vanligt beteende.Algolia kräver att du registrerar dig för ett konto för att integrera dess sökning i dina Node.js-appar. Logga in Algolia.com att registrera dig gratis.
Hur man får inloggningsuppgifter för Algolia Developer API
För att implementera Algolia-sökning måste du skapa en applikation för ditt projekt. När du registrerar dig skapar Algolia en ny applikation som heter Min första ansökan för dig, och du kan välja att antingen använda den eller skapa en ny.
Att få dina API-uppgifter är mycket enkelt från instrumentpanelen. Det finns en lista med alternativ inklusive API-nycklar:
När du klickar på API-nycklar, kommer du att se en sida med olika användaruppgifter. Allt du behöver för grundläggande integration är ansöknings-ID och Admin API-nyckel.
Nu när du har konfigurerat en Algolia-applikation är du redo att integrera den i din Node.js-app.
Implementera sökfunktioner med Algolia
Algolia erbjuder en klient-SDK för ett brett utbud av programmeringsspråk, inklusive Node.js som fortfarande är det bästa valet för JavaScript på serversidan. Node.js SDK gör det enkelt att använda Algolia med JavaScript.
Börja med att installera algoliasearch npm-paket:
npm installera algoliasearch
Nästa steg är att initiera klienten i ditt projekt. I en fil som heter algolia.js, importera algoliasearch, initiera sedan en ny klient med dina API-uppgifter:
konst Algolia = behöva("algoliasearch")
konst ALGOLIA_APP_ID = "YOUR_APPLICATION_ID" || process.env. ALGOLIA_APP_ID
konst ALGOLIA_ADMIN_KEY = 'YOUR_ADMIN_KEY' || process.env. ALGOLIA_ADMIN_KEY
konst algoliaClient = ny Algolia (ALGOLIA_APP_ID, ALGOLIA_ADMIN_KEY);
Du kommer att använda Algolia-klientinstansen för ytterligare operationer i ditt projekt.
Algolia använder sökindex för att lagra data som du kan söka. Ett sökindex liknar en databastabell som du kan fråga efter att hämta data från. Efter att ha initierat din klient måste du skapa ett index för att lagra data. Så här kan du till exempel skapa ett index för att lagra bilar:
konst carsIndex = algoliaClient.initIndex("bilar")
Den här raden skapar ett index i din applikation som kallas bilar och lagrar en referens till det i carsIndex variabel.
Därefter bör du lägga till data i ditt index så att du kan söka efter det. Du bör alltid förbereda dina data som en array av objekt och se till att varje objekt har objekt-ID egendom för att unikt identifiera den.
Skriv lite kod för att definiera data du vill lägga till i Algoila-indexet:
konst bilar = [
{ objekt-ID: '1', varumärke: "Toyota", modell: "Camry", år: '2022', Färg: 'Silver' },
{ objekt-ID: '2', varumärke: 'Honda', modell: 'Medborgerlig', år: '2021', Färg: 'Röd' },
{ objekt-ID: '3', varumärke: 'Vadställe', modell: 'Mustang', år: '2020', Färg: 'Svart' },
{ objekt-ID: '4', varumärke: "Chevrolet", modell: 'Korvett', år: '2023', Färg: 'Gul' },
{ objekt-ID: '5', varumärke: 'BMW', modell: "X5", år: '2022', Färg: 'Vit' }
];
Algolia använder spara objekt metod för att lägga till data till ett specifikt index. Denna funktion accepterar en lista med objekt som argument och returnerar ett löfte. Du kan använda vänta nyckelord med det om du behöver använda dess utdata.
Så här lägger du till alla bilar i bilar array till carsIndex i din Algolia-applikation:
carsIndex.saveObjects (bilar)
När du kör den här funktionen, gå tillbaka till din applikationspanel på Algolia och scrolla ner till indexen. Du hittar bilar indexera där och när du klickar på den ser du dess data.
Nu när du har data i ditt index kan du söka efter data med hjälp av olika sökmetoder från Algolia.
För att fråga efter data från bilar index kan du använda Sök metod för SDK: n och skicka en sökfråga till den som ett argument. Funktionen behandlar frågan som ett reguljärt uttryck och returnerar varje matchning den hittar i indexet.
Följande kod definierar en funktion för att söka i bilarnas index med hjälp av en fråga och skriva ut resultaten.
konst sökBil = asynkron (fråga) => {
konst data = vänta carsIndex.search (fråga)
trösta.log (data.hits)
}
sökCar('honda')
När du kör den här koden kommer programmet att skriva ut bilobjektet som har ett fält vars värde matchar ordet Honda. Utgången kommer att se ut ungefär så här:
Du kan också söka efter värden som visas i andra egenskaper hos objekten, och funktionen kommer att returnera varje matchning den hittar.
Algolia låter dig göra egenskaper sökbara eller inte. Till exempel att bara göra varumärke och modell sökbar i bilarnas index kan du använda ställa in inställningar funktion för att konfigurera begränsningen som koden nedan visar.
carsIndex.setSettings({
sökbara attribut: ['varumärke', 'modell'],
})
Detta gör att alla andra egenskaper är osökbara, så sökfrågor körs endast mot varumärke och modell egenskaper. Att utesluta egenskaper är praktiskt när du bygger verkliga produkter där du måste säkerställa bästa praxis för säkerhet och hindra användare från att komma åt privata data genom sökning.
Bygg effektiv sökfunktion med Algolia
Algolia är en mycket kraftfull teknik och är ett av de bästa valen för att implementera blixtsnabb sökning i webbapplikationer. Det är också stavfeltolerant och låter dig till och med justera nivån på stavfeltolerans i din sökning.
Du kan alltid lita på sökmotorns prestanda i din Node.js-applikation när du implementerar den med Algolia. Du kan prova att implementera sökning i ett verkligt program och bläddra igenom dokumentationen för att upptäcka mer om Algolia.