• Nie Znaleziono Wyników

Ajax Search API

N/A
N/A
Protected

Academic year: 2021

Share "Ajax Search API"

Copied!
18
0
0

Pełen tekst

(1)

Ajax Search API

Adam Kęsy

(2)

Co to takiego ?

Biblioteka JavaScript zapewniająca programistyczny dostęp do zasobów wyszukiwarki Google.

Początkowo dostępne wyłącznie jako zestaw skryptów JavaScript.

Obecnie Google AJAX Search API stosuje model REST. Pozwala to na implementację wyszukiwarek zarówno w JavaScript/Ajax jak i po stronie serwera (np. w PHP).

Biblioteka Google Ajax Search API zastąpiła wycofane pod koniec 2006 roku rozwiązanie o nazwie Google SOAP Search API. Obecny interfejs API wyszukiwarki Google jest dostępny pod dwoma

postaciami:

― biblioteka JavaScript

― zestaw adresów URL realizujących usługę w modelu REST

Biblioteka JS pozwala na osadzenie wyszukiwarki WWW w kodzie HTML, natomiast model REST udostępnia zasoby Google skryptom przetwarzanym po stronie serwera (np. PHP, Perl).

(3)

REST (Representational state transfer)

• Wzorzec architektury oprogramowania dla takich systemów jak Internet (World Wide Web).

• Jest to architektura klient-serwer.

(4)

Startujemy

• Usługi Google Ajax Search API są bezpłatne lecz wymagają rejestracji i generowania kluczy.

• Po utworzeniu konta Google (lub korzystając np. z konta Gmail) wchodzimy na stronę

http://code.google.com/apis/ajaxsearch/signup.html.

• W formularzu wprowadzamy adres URL aplikacji, która będzie wykorzystywała Google API.

(5)

Generowanie klucza

(6)

Wygenerowany przykład

(7)

W przeglądarce

(8)

Ajax i JavaScript

• Wyszukiwarkę Ajaksową osadzamy w kodzie HTML w dwóch miejscach:

― w nagłówku strony (tj. pomiędzy znacznikami <head></head>) dodajemy skrypt JavaScript

― w treści strony (tj. pomiędzy znacznikami <body></body>) dodajemy element div przeznaczony na wyszukiwarkę

• Pierwszy ze znaczników script za ustalenie klucza – podajemy wygenerowany klucz.

(9)

Kod JS zawarty w drugim elemencie script

google.load

google.load(moduleName, moduleVersion, optionalSettings), allows you to call individual APIs by version, where:

moduleName is the name of the API (e.g., "maps" or "search").

version specifies the version of the API module, as described below. You must always specify the version of the API you are using. If you are unsure which version you want to use, use the version stated in the in the documentation for each API.

optionalSettings specifies all optional configuration options for the API you are loading as a JavaScript object literal. Different APIs have different options as listed in available APIs. The possible properties are:

callback: The function to call once the script has loaded. If using the Auto-loading feature, this must specify a function name, not a function reference.

language: The language in which to localize the API's UI controls. This is specified as a ISO639 language code.

nocss: A boolean that tells the API whether to load any style sheets typically associated with its controls. If you don't intend to use the default CSS, you can reduce the load time by setting this to true. The default setting is false.

packages: An array of strings specifying related packages to be read in along with the core API.

For example, you could load "piechart" and "table" along with the Visualization API.

base_domain: The base domain from which to load the API. For example, you could load from

"ditu.google.cn" with the "maps" module to get the Chinese version of the Maps API.

other_params: Specific parameters supported by a particular API (and usually very specific to the API). An alternative to passing in a parameter via a <script> tag.

(10)

Search Control

• Główny obiekt Google Web Search API koordynujący

wyszukiwanie z wielu różnych serwisów, z których możemy wyróżnid:

― LocalSearch

― WebSearch

― VideoSearch

― BlogSearch

― NewsSearch

― ImageSearch

― PatentSearch

― BookSearch(experymentalny)

(11)

Search Control – dodawanie wyszukiwarek

// Tworzymy search control

var searchControl = new google.search.SearchControl();

// Dodajemy wyszukiwarki

var localSearch = new google.search.LocalSearch();

searchControl.addSearcher(localSearch);

searchControl.addSearcher(new google.search.WebSearch());

searchControl.addSearcher(new google.search.VideoSearch());

searchControl.addSearcher(new google.search.BlogSearch());

(12)

Search Control - kończymy

// Ustawiamy swoją lokalizację

localSearch.setCenterPoint("New York, NY");

// Rysujemy wyszukiwarkę wskazując, pod jaki element strony ma się podczepid

searchControl.draw(document.getElementById("searchcontrol"));

// Zaczynamy wyszukiwanie

searchControl.execute("Google");

}

// Ustalamy funkcję, która ma się wykonad, gdy dokument się załaduje google.setOnLoadCallback(OnLoad);

(13)

Modyfikacja wyglądu

• Wygląd wyszukiwarki oraz wyników wyszukiwania

modyfikujemy stylami CSS. Umożliwiają to liczne klasy zawarte w kodzie HTML, zwracanym przez Google. Najważniejszymi są:

―.gsc-search-box — formularz wyszukiwania

―.gsc-resultsHeader — nagłówek z ikonami

―.gsc-result — pojedynczy wynik wyszukiwania

―.gsc-cursor-box — wskaźnik stronicowania wyników

―.gs-title — tytuł wyniku

―.gs-snippet — opis wyniku

―.gs-visibleUrl — adres URL wyniku

(14)

Modyfikacja wyglądu

(15)

Modyfikacja wyglądu – po zastosowaniu CSS

(16)

Informacje o wykorzystaniu technologii Google

• Licencja użytkownika usług Google AJAX Search API nakazuje umieszczenie loga Google na każdej stronie stosującej API.

Zadanie to wykorzystujemy wywołując metodę getBranding().

(17)

Usługa REST

• Google AJAX Search API pozwala na przeszukiwanie zasobów wyszukiwarki Google nie tylko w JavaScript, ale także w

skryptach wykonywanych po stronie serwera, a więc w PHP, Perlu, Ruby czy Pythonie.

• Wyszukiwanie w sieci WWW realizuje skrypt o adresie:

http://ajax.googleapis.com/ajax/services/search/web Ma on dwa obowiązkowe parametry:

v - wersja oprogramowania (obecny interfejs Google AJAX Search API jest opatrzony numerem wersji 1.0)

q - wyszukiwana fraza.

• http://ajax.googleapis.com/ajax/services/search/web?v=1.0&

q=manamana

zwróci wyniki wyszukiwania słowa „manamana” w formacie JSON.

(18)

JSON

JSON, JavaScript Object Notation – format wymiany danych komputerowych. JSON jest formatem tekstowym, będącym podzbiorem języka JavaScript.

• JSON jest jednym z nieformalnych sposobów przekazywania danych do aplikacji opartych o AJAX. W typowych przypadkach dane w formacie JSON są pobierane z serwera jako tekst przy wykorzystaniu obiektu XMLHttpRequest języka JavaScript, a następnie przekształcane w obiekt.

Cytaty

Powiązane dokumenty

• Za prawidłowo wykonane ćwiczenie uzyskujesz liczbę punktów wskazaną w kolumnie PUNKTACJA ZADANIA.. Za brak odpowiedzi lub niepełne rozwiązanie nie

Samodzielna praca w domu z Repetytorium, arkuszami egzaminacyjnymi, powtórzenie treści, problematyki lektur szkolnych, zagadnień z wiedzy o języku, redagowanie krótkich

W dokumentach XHTML stosuje się specjalny prolog, który identyfikuje poziom używanego języka XHTML 1.0. Jest on wstawiany jako pierwszy element dokumentu, JESZCZE

(np. ile można maks. Zadad pytao, czy jest jakieś ograniczenie co do liczby zwróconych przez Google wyników, albo czy są jakieś słowa kluczowe których nie można użyd w

Zamodeluj nowy znacznik i umieśd go na swojej mapie (zmieo ikonę, rozmiar, czcionkę,

odpoczynek jako okazja do refleksji nad celem i  kresem życia ludzkiego oraz czynnik samowychowania Zdaniem niemieckiego pedagoga Fryderyka Wilhelma Foerstera „zdol-

Opcja ta określa, w którym katalogu będą znajdować się skrypty serwera (zawartość katalogu traktowana jest, jako aplikacje).. AddHandler

Zapisz zdjęcie w katalogu HTML (który utworzyłeś w kroku 1, w tym katalogu powinien również znajdować plik index.html) pod nazwą pasma z rozszerzeniem jpg, a