2012-05-02 4 views
7

Widziałem dwie formy odniesienia do Biblioteki/usługi, używając JavaScript lub wywołując API bezpośrednio, kilka razy, ale nie rozumiem różnicy. Dokumenty Google nie opisują niczego na temat dwóch metod uzyskiwania dostępu do interfejsu API.Podczas korzystania z interfejsu Google Places API, jaka jest różnica między "używanie biblioteki JavaScript" i "bezpośrednie wywoływanie interfejsu API"?

Na przykład, kwestia ta mówi o 2 sposoby uzyskiwania dostępu do API: OVER_QUERY_LIMIT in a loop

I wydaje się, że istnieje pewien rodzaj bezpośredniego dostępu do sieci odbywa się w tej kwestii: Querying Google Places API using jQuery

jest to coś, gdzie istniał stary sposób, który wymagał formatowania parametrów adresu URL, a nowy sposób polega na wykorzystaniu wywołań biblioteki JavaScript?

FINAL EDIT STRESZCZENIE: Istnieje dwa odrębne sposoby żądania danych z Google, jak opisano w odpowiedzi @Dan Nissenbaum jest poniżej. Od czasu mojego pierwotnego pytania, pytanie QUERY_LIMIT, o którym mowa powyżej, zostało zmodyfikowane, aby zawierało więcej informacji o dwóch opcjach.

Odpowiedz

6

Być może odnosisz się do rozróżnienia między interfejsem API Miejsc Google, który jest przeznaczony do używania na serwerze SERVER (tj. Z wykorzystaniem PHP do bezpośredniego wywoływania interfejsu API Miejsc Google), a zastosowaniem całkowicie odmiennego podejścia do Biblioteki JavaScript w Miejscach Google w którym PRZEGLĄDARKA wykonuje JavaScript za pomocą biblioteki JavaScript dostarczonej przez Google (która wewnętrznie owija połączenia z interfejsem API Miejsc Google), więc jako programista JavaScript musisz tylko zrozumieć bibliotekę JavaScript dostarczoną przez Google i użyć tej funkcji).

Oto dwa scenariusze.

Scenariusz nr 1: Użyj interfejsu API bezpośrednio. W przypadku tej metody musisz zapoznać się z dokumentacją API Google dotyczącą interfejsu API Miejsc Google: https://developers.google.com/maps/documentation/places/.

Korzystanie z tego interfejsu API przebiega następująco (podając tylko prosty przykład). Załóżmy, że chcesz pobrać miejsca w promieniu 1000 metrów szerokości geograficznej = -27.2531166, długości geograficznej = 138,8655664. Musisz trafić adres URL zgodnie z opisem w dokumentacji interfejsu API: https://developers.google.com/maps/documentation/places/#PlaceSearchRequests.

W tym przykładzie, URL wygląda następująco (to długo):

https://maps.googleapis.com/maps/api/place/search/json?location=-27.2531166,138.8655664&radius=1000&sensor=false&key=AddYourOwnKeyHere 

Potrzebny jest klucz do osobistego użytku, które zakładam, że masz. Istnieją inne opcje, które możesz określić, na przykład ograniczenie wyników do restauracji itp.

Po naciśnięciu tego adresu URL dane zostaną zwrócone w formacie JSON lub XML, zgodnie z tekstem json w adresie URL powyżej (użyj tekstu xml dla xml). Dane te są zwracane dokładnie, podobnie jak dane są zwracane z dowolnego połączenia URL po kliknięciu adresu URL w przeglądarce.

Możesz to sprawdzić, wpisując adres URL bezpośrednio w przeglądarce i wyświetlając wyniki.

Aby korzystać z API bezpośrednio z kodu, należy użyć kodu, który uderza w zewnętrzny URL powyżej w kodzie i pobiera wyniki w kodzie (na przykład przy użyciu biblioteki PHP CURL lub przy użyciu AJAX w JavaScript).

Scenariusz nr 2: użyć biblioteki JavaScript, który zapewnia, że ​​Google owija API, więc nie trzeba się z tym pogodzić. Zaktualizuję odpowiedź, podając więcej szczegółów na ten temat, jeśli nie wiesz, co to jest.

+0

Moje pytanie dotyczy ** Miejsc Google **, ale dziękuję za pomoc. Zaktualizowałem moje pytanie, aby dodać trochę jasności. –

+0

Tak, w twoim pierwszym linku powyżej (http://stackoverflow.com/questions/10409141/over-query-limit-in-a-loop), w rzeczywistości pytający odnosi się do bezpośredniego użycia API (tj. Adres URL Google korzystający z interfejsu REST API i przetwarzający wyniki XML lub JSON w kodzie, w przeciwieństwie do biblioteki JavaScript firmy Google, która (niewidocznie dla Ciebie) robi to samo). Zaktualizuję moją odpowiedź, aby było to bardziej jasne. –

+0

Dan - dzięki za udostępnienie wszystkich linków i informacji. Teraz dostaję różnicę. Nie wiedziałem o opcji interfejsu API, ponieważ nie ma linku z dokumentacji JavaScript. I nie, nie musisz wyjaśniać opcji JavaScript; masz rację, że znam tę stronę rzeczy. Doceniam, że poświęciłeś czas - –

2

Dokumenty omawiają dwa różne podejścia. Biblioteka Miejsc korzysta z usług Miejsc Google z interfejsu API Google Maps w języku JavaScript. Jeśli korzystasz z interfejsu Google Maps API w przeglądarce, prawdopodobnie jest to dla Ciebie: https://developers.google.com/maps/documentation/javascript/places

Istnieje również usługa internetowa, która pozwala na zapytanie bezpośrednio z aplikacji. Zapytujesz o to, korzystając z bezpośrednich połączeń HTTP z usługami Google. Jeśli potrzebujesz dostępu do danych na swoim serwerze lub urządzeniu mobilnym, jest to podejście, które chcesz podjąć: https://developers.google.com/maps/documentation/places

+0

Poprawiam się; obie opcje _ są_ udokumentowane. Do tworzenia map używam JavaScript, więc zaczynam szukać informacji. Niestety, nie ma wzmianki o API w dokumentach JavaScript (przynajmniej nie teraz). Tam jest link z dokumentacji API do dokumentacji JavaScript, ale to mi nie pomogło. Dziękuję za wyjaśnienia i informacje - –