Uzyskaj doskonałe wyniki wyszukiwania dla swoich treści, korzystając z tej samej wyszukiwarki, która obsługuje Hacker News.

Wydajne wyszukiwanie jest istotną cechą większości nowoczesnych aplikacji i witryn internetowych. Korzystając z API Algolia, możesz zaimplementować potężną funkcjonalność wyszukiwania, która znacznie poprawia komfort użytkowania.

Niezależnie od tego, czy tworzysz bloga, platformę e-commerce, czy jakąkolwiek aplikację wymagającą wyszukiwania, Node.js to potężna technologia internetowa, dzięki której możesz to zrobić. Algolia zapewnia doskonałą platformę do zbudowania solidnego systemu wyszukiwania.

Co to jest Algolia?

Algolia to hostowana wyszukiwarka, która zapewnia platformę i narzędzia do wdrażania wydajnych i elastycznych wyszukiwań w witrynach internetowych i aplikacjach. Algolia ma dwa komponenty: wyszukiwanie i analitykę.

Korzystając z Algolii, możesz tworzyć doskonałe doświadczenia wyszukiwania dla swoich użytkowników, a następnie używać narzędzi do analizowania i wyciągania znaczących spostrzeżeń z Twojej aplikacji.

instagram viewer

Algolia oferuje również programistyczne API i wspierające SDK, aby umożliwić bezproblemową integrację z aplikacjami zbudowanymi w różnych językach. Daje to podwójną korzyść z API dla niskiego poziomu mocy i SDK dla łatwiejszego rozwoju typowych zachowań.

Algolia wymaga zarejestrowania konta w celu zintegrowania wyszukiwania z aplikacjami Node.js. Zalogować się Algolia.com aby zarejestrować się za darmo.

Jak uzyskać dane uwierzytelniające API programisty Algolia

Aby wdrożyć wyszukiwanie Algolia, musisz utworzyć aplikację dla swojego projektu. Podczas rejestracji Algolia tworzy nową aplikację o nazwie Moja pierwsza aplikacja dla Ciebie i możesz go użyć lub utworzyć nowy.

Uzyskanie poświadczeń API jest bardzo łatwe z pulpitu nawigacyjnego. Istnieje lista opcji, w tym Klucze API:

Kiedy klikniesz Klucze API, zobaczysz stronę z różnymi danymi logowania. Wszystko, czego potrzebujesz do podstawowej integracji, to Identyfikator aplikacji I Klucz API administratora.

Teraz, gdy masz już skonfigurowaną aplikację Algolia, możesz ją zintegrować ze swoją aplikacją Node.js.

Implementacja funkcji wyszukiwania w Algolii

Algolia oferuje klientowi SDK dla szerokiej gamy języków programowania, w tym Node.js, który pozostaje najlepszym wyborem dla JavaScript po stronie serwera. Node.js SDK ułatwia korzystanie z Algolii z JavaScriptem.

Zacznij od zainstalowania algoliasearch pakiet npm:

npm zainstaluj algoliasearch

Następnym krokiem jest zainicjowanie klienta w projekcie. W pliku o nazwie algolia.js, import algoliasearch, a następnie zainicjuj nowego klienta przy użyciu poświadczeń API:

konst Algolia = wymagać("wyszukiwarka algoli")

konst ALGOLIA_APP_ID = „YOUR_APPLICATION_ID” || proces.env. ALGOLIA_APP_ID
konst ALGOLIA_ADMIN_KEY = „TWÓJ_KLUCZ_ADMINA” || proces.env. ALGOLIA_ADMIN_KEY

konst algoliaKlient = nowy Algolia (ALGOLIA_APP_ID, ALGOLIA_ADMIN_KEY);

Instancję klienta Algolia wykorzystasz do dalszych operacji w swoim projekcie.

Algolia używa indeksów wyszukiwania do przechowywania danych, które można przeszukiwać. Indeks wyszukiwania jest podobny do tabeli bazy danych, do której można wysyłać zapytania w celu pobrania danych. Po zainicjowaniu klienta należy utworzyć indeks do przechowywania danych. Na przykład, oto jak możesz utworzyć indeks do przechowywania samochodów:

konst carsIndex = algoliaClient.initIndex("samochody")

Ta linia tworzy indeks w twojej aplikacji o nazwie samochody i przechowuje odniesienie do niego w pliku samochodyIndeks zmienny.

Następnie powinieneś dodać dane do swojego indeksu, aby móc je wyszukać. Powinieneś zawsze przygotowywać swoje dane jako tablicę obiektów i upewnić się, że każdy obiekt ma identyfikator obiektu właściwość umożliwiającą jej jednoznaczną identyfikację.

Napisz kod, aby zdefiniować dane, które chcesz dodać do indeksu Algoila:

konst samochody = [
{ identyfikator obiektu: '1', marka: „Toyota”, Model: „Camry”, rok: '2022', kolor: 'Srebro' },
{ identyfikator obiektu: '2', marka: „Honda”, Model: 'Obywatelski', rok: '2021', kolor: 'Czerwony' },
{ identyfikator obiektu: '3', marka: 'Bród', Model: 'Mustang', rok: '2020', kolor: 'Czarny' },
{ identyfikator obiektu: '4', marka: „Chevrolet”, Model: 'Korweta', rok: '2023', kolor: 'Żółty' },
{ identyfikator obiektu: '5', marka: „BMW”, Model: „X5”, rok: '2022', kolor: 'Biały' }
];

Algolia używa zapisz Obiekty metoda dodawania danych do określonego indeksu. Ta funkcja przyjmuje jako argument listę obiektów i zwraca obietnicę. Możesz użyć czekać na słowo kluczowe, jeśli chcesz użyć jego danych wyjściowych.

Oto jak dodać wszystkie samochody w samochody tablica do samochodyIndeks w Twojej aplikacji Algolia:

carsIndex.saveObiekty (samochody)

Po uruchomieniu tej funkcji wróć do pulpitu aplikacji na Algolii i przewiń w dół do indeksów. Znajdziesz samochody index tam, a po kliknięciu zobaczysz jego dane.

Teraz, gdy masz dane w swoim indeksie, możesz wyszukiwać w nim dane, korzystając z różnych metod wyszukiwania oferowanych przez Algolię.

Aby zapytać o dane z samochody indeks, możesz użyć szukaj metody zestawu SDK i przekazać do niej zapytanie wyszukiwania jako argument. Funkcja traktuje zapytanie jako wyrażenie regularne i zwraca każde dopasowanie znalezione w indeksie.

Poniższy kod definiuje funkcję przeszukiwania indeksu samochodów za pomocą zapytania i drukowania wyników.

konst szukajSamochód = asynchroniczny (zapytanie) => {
konst dane = czekać na carsIndex.search (zapytanie)
konsola.log (data.hits)
}

wyszukajSamochód(„Honda”)

Po uruchomieniu tego kodu program wypisze obiekt samochodu, który ma pole, którego wartość pasuje do słowa Hondy. Dane wyjściowe będą wyglądać mniej więcej tak:

Możesz także wyszukiwać wartości, które pojawiają się w innych właściwościach obiektów, a funkcja zwróci każde znalezione dopasowanie.

Algolia pozwala na udostępnianie lub nie przeszukiwanie nieruchomości. Na przykład zrobić tylko marka I Model przeszukiwać w indeksie samochodów, możesz użyć ustawUstawienia funkcję, aby skonfigurować ograniczenie, jak pokazano w poniższym kodzie.

carsIndex.setSettings({
przeszukiwalneAtrybuty: ['marka', 'Model'],
})

Powoduje to, że każda inna właściwość jest niemożliwa do wyszukania, więc zapytania wyszukiwania będą działać tylko w odniesieniu do marka I Model nieruchomości. Wykluczanie właściwości przydaje się, gdy budujesz rzeczywiste produkty, w których musisz się upewnić najlepsze praktyki bezpieczeństwa i uniemożliwić użytkownikom dostęp do prywatnych danych za pomocą wyszukiwania.

Tworzenie wydajnej funkcji wyszukiwania z Algolia

Algolia to bardzo potężna technologia i jest jednym z najlepszych wyborów do implementacji błyskawicznego wyszukiwania w aplikacjach internetowych. Jest również odporny na literówki, a nawet pozwala dostosować poziom tolerancji literówek w wyszukiwaniu.

Zawsze możesz zaufać wydajności wyszukiwarki w swojej aplikacji Node.js, gdy wdrażasz ją z Algolią. Możesz spróbować zaimplementować wyszukiwanie w rzeczywistej aplikacji i przejrzeć dokumentację, aby dowiedzieć się więcej o Algolii.