Identyfikatory miejsc

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Identyfikatory miejsc jednoznacznie identyfikują miejsca w bazie danych Miejsc Google i w Mapach Google. Identyfikatory miejsc są akceptowane w żądaniach do tych interfejsów API Map Google:

  • Pobieram adres identyfikatora miejsca w usłudze internetowej Geocoding API i usłudze geokodowania, Maps JavaScript API.
  • Określanie punktu początkowego, docelowego i pośredniego w usłudze internetowej Route API oraz w usłudze Trasa dojazdu, Maps JavaScript API.
  • Określanie punktów początkowych i docelowych w usłudze internetowej przeznaczonej dla matrycy odległości oraz w usłudze odległości ( Maps Matrix API), Maps JavaScript API.
  • Pobieram szczegółowe informacje o miejscach w usłudze internetowej interfejsu API interfejsu API, pakiet SDK Miejsc na Androida, pakiet SDK Miejsc na iOS oraz bibliotekę Miejsc, interfejs API JavaScript.
  • Używanie parametrów identyfikatora miejsca w interfejsie API Map Google do umieszczania.
  • Pobieranie zapytań w URL-ach Map.
  • Wyświetlam ograniczenia prędkości w interfejsie Roads API.
  • Znajdowanie i stylowanie wielokątów granic w stylu opartym na danych.

Znajdowanie identyfikatora konkretnego miejsca

Czy szukasz identyfikatora konkretnego miejsca? Aby wyszukać miejsce i uzyskać jego identyfikator, użyj wyszukiwarki miejsc.

Możesz też wyświetlić identyfikator miejsca z jego kodem w dokumentacji interfejsu Maps JavaScript API.

Omówienie

Identyfikator miejsca to identyfikator tekstowy, który jednoznacznie identyfikuje miejsce. Identyfikator może być dłuższy (nie ma maksymalnej długości identyfikatorów miejsc). Przykłady:

  • ChIJgUbEo8cfqokR5lP9_Wh_DaM
  • GhIJQWDl0CIeQUARxks3icF8U8A
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
  • IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ

Identyfikatory miejsc są dostępne dla większości lokalizacji, w tym firm, punktów orientacyjnych, parków i skrzyżowań. To samo miejsce lub lokalizacja może mieć wiele różnych identyfikatorów miejsca. Identyfikatory miejsc mogą się z czasem zmieniać.

Możesz używać tego samego identyfikatora miejsca w interfejsie Places API i w wielu interfejsach Google Maps Platform API. Możesz na przykład użyć tego samego identyfikatora miejsca, aby odwołać się do miejsca w interfejsach Places API, Maps JavaScript API, Geocoding API, Maps embed API i Roads API.

Pobieranie szczegółowych informacji o miejscu przy użyciu identyfikatora miejsca

Identyfikatory miejsc są zwolnione z ograniczeń wynikających z pamięci podręcznej w sekcji 3.2.3(b) Warunków korzystania z Google Maps Platform. Gdy określisz identyfikator miejsca, możesz użyć jego wartości przy kolejnym wyszukiwaniu. Więcej informacji znajdziesz poniżej w sekcji Zapisywanie identyfikatorów miejsc do późniejszego użycia.

Typowym sposobem używania identyfikatorów miejsc jest wyszukiwanie miejsc (np. za pomocą interfejsu Places API lub biblioteki miejsc w interfejsie Maps JavaScript API) i używanie zwróconego identyfikatora miejsca w celu pobrania szczegółowych informacji o miejscu. Możesz zapisać identyfikator miejsca i użyć go, aby później pobrać te same szczegóły miejsca. Informacje o zapisywaniu identyfikatorów miejsc znajdziesz poniżej.

Przykład z wykorzystaniem interfejsu API Miejsc

Za pomocą interfejsu Places API możesz znaleźć identyfikator miejsca za pomocą żądania Place Search (Wyszukiwanie miejsc).

Poniżej podano przykładowe zapytanie dotyczące miejsc typu „restauracja” w promieniu 1500 m od punktu w Sydney, w którym znajduje się słowo „rejs”:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY

Odpowiedź zawiera identyfikator miejsca w polu place_id, jak w tym fragmencie:

{
  "html_attributions" : [],
  "results" : [
    {
      "geometry" : {
        "location" : {
          "lat" : -33.870775,
          "lng" : 151.199025
        }
      },
      ...
      "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
      ...
    }
  ],
  "status" : "OK"
}

Opis wszystkich pól w odpowiedzi znajdziesz w dokumentacji wyszukiwania związanego z miejscem.

Możesz teraz wysłać żądanie dotyczące szczegółów miejsca, podając identyfikator miejsca w parametrze place_id:

https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY

Zapisz identyfikatory miejsc do późniejszego użycia

Identyfikatory miejsc są zwolnione z ograniczeniach dotyczących pamięci podręcznej opisanych w Sekcji 3.2.3(a) Warunków korzystania z Google Maps Platform. Dlatego możesz zapisywać wartości identyfikatorów miejsc do późniejszego wykorzystania.

Odświeżam identyfikatory zapisanych miejsc

Jeśli identyfikatory miejsca mają więcej niż 12 miesięcy, zalecamy ich odświeżenie. Identyfikatory miejsc możesz bezpłatnie odświeżać, wysyłając żądanie szczegółów miejsca, podając w polu fields tylko pole place_id.

Na przykład:

  https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=YOUR_API_KEY
  

To wywołanie uruchomi kod SKU miejsca – odświeżanie identyfikatorów SKU. To żądanie może też jednak zwracać kod stanu NOT_FOUND. Jedną ze strategii jest przechowywanie pierwotnego żądania, które zwróciło każdy identyfikator miejsca. Jeśli identyfikator miejsca stanie się nieprawidłowy, możesz ponownie wysłać prośbę, aby uzyskać nowe wyniki. Te wyniki mogą, ale nie muszą, zawierać pierwotne miejsce. Żądanie jest płatne.

Kody błędów podczas korzystania z identyfikatorów miejsc

Kod stanu INVALID_REQUEST wskazuje, że podany identyfikator miejsca jest nieprawidłowy. Wartość INVALID_REQUEST może zostać zwrócona, gdy identyfikator miejsca został skrócony lub w inny sposób zmodyfikowany i nie jest już prawidłowy.

Kod stanu NOT_FOUND wskazuje, że określony identyfikator miejsca jest nieaktualny. Identyfikator miejsca może stać się nieaktualny, gdy firma zostanie zamknięta lub przeniesiona. Identyfikatory miejsc mogą się zmieniać z powodu aktualizacji na dużą skalę w bazie danych Map Google. W takich przypadkach miejsce może otrzymać nowy identyfikator, a stary identyfikator zwróci odpowiedź NOT_FOUND.

Na przykład niektóre typy identyfikatorów miejsc mogą czasami wywoływać odpowiedź NOT_FOUND lub interfejs API może zwracać inny identyfikator miejsca w odpowiedzi. Typy identyfikatorów miejsc obejmują:

  • Adresy, które nie istnieją w Mapach Google jako adresy dokładne, ale są wskazywane na podstawie zakresu adresów.
  • Fragmenty długiej trasy, w której żądanie określa też miasto lub miejscowość.
  • Skrzyżowania.
  • Miejsca z komponentem adresu typu subpremise.

Identyfikatory te często mają postać długiego ciągu (identyfikatory miejsc nie mają maksymalnej długości). Przykład:

EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4