A
Destination
to konkretna lokalizacja lub miejsce, do którego użytkownik chce dotrzeć lub w którego kierunku chce się poruszać. Destination zawiera też zbiór informacji związanych z lokalizacją lub miejscem, takich jak punkty nawigacyjne, punkty orientacyjne, wejścia i kontury budynków.
Metoda
SearchDestinations
interfejsu Geocoding API umożliwia pobieranie szczegółowych informacji o różnych miejscach docelowych na podstawie różnych kryteriów wejściowych, takich jak adres, identyfikator miejsca lub współrzędne geograficzne.
Prośba o wyszukanie miejsc docelowych
Żądanie wyszukiwania miejsc docelowych to żądanie HTTP POST wysyłane na adres URL w formacie:
https://geocode.googleapis.com/v4/geocode/destinations
Przekaż wszystkie parametry w treści żądania JSON lub w nagłówkach w ramach żądania POST. Na przykład:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Lokalizację, w której chcesz wyszukać miejsce docelowe, możesz określić na 3 sposoby:
- Adres
- Identyfikator miejsca
- Współrzędne geograficzne
Wyszukiwanie miejsca docelowego według adresu
Adres możesz podać jako nieuporządkowany ciąg znaków. Geokodowanie adresu nie rozpoznaje współrzędnych szerokości i długości geograficznej ani innych nieuporządkowanych ciągów znaków, które nie reprezentują adresu. Żądania używające takich ciągów nie są obsługiwane i mogą powodować błędy lub nieokreślone zachowanie. Przykłady nieobsługiwanych zapytań:
| Typ zapytania | Przykład |
|---|---|
| Współrzędne szerokości i długości geograficznej. Zamiast tego użyj zapytania o lokalizację. | "37.422131,-122.084801" |
| Zbyt wiele pojęć lub ograniczeń, np. nazwy wielu miejsc, dróg lub miast w jednym zapytaniu. | "Market Street San Francisco San Jose Airport" |
| Elementy adresu pocztowego nie są widoczne w Mapach Google. |
"C/O Jan Kowalski, ul. Główna 123" "Skr. poczt. 13, Warszawa" |
| Nazwy firm, sieci lub kategorii połączone z lokalizacjami, w których te podmioty nie są dostępne | „Tesco w pobliżu Dallas w Teksasie” |
| Niejednoznaczne zapytania z wieloma interpretacjami | „Oddanie ładowarki” |
| nazwy historyczne, które nie są już używane; | „Middlesex, Wielka Brytania” |
| Elementy lub intencje niezwiązane z geoprzestrzenią | „Ile łodzi jest w porcie Ventura?” |
| Nieoficjalne lub wymyślone nazwy |
„The Jenga” „The Helter Skelter” |
| Duże jednostki polityczne (miasta, stany, kraje) |
"Nowy Jork" "Kalifornia" "USA" |
| Trasy bez konkretnych adresów |
„1st Ave., Nowy Jork, NY” „I-95” |
curl -X POST -d '{
"addressQuery": {
"addressQuery": "601 S Bernardo Ave, Sunnyvale, CA 94087, USA"
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
lub jako postalAddress:
curl -X POST -d '{
"addressQuery": {
"address": {
"addressLines": ["601 S Bernardo Ave"],
"locality": "Sunnyvale",
"postalCode": "94087",
"administrativeArea": "CA",
"regionCode": "US"
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Format postalAddress jest zwykle używany podczas przetwarzania komponentów adresu przechwyconych w formularzu HTML.
Wyszukiwanie miejsca docelowego według identyfikatora miejsca
Możesz pobrać miejsce docelowe, podając identyfikator miejsca:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Obsługiwane identyfikatory miejsc
Metoda Search Destinations działa najlepiej z identyfikatorami miejsc, które reprezentują konkretne miejsca docelowe, do których można dotrzeć. Identyfikatory miejsc dla typów takich jak establishment, point_of_interest, premise, street_address i subpremise są ogólnie obsługiwane. Identyfikatory miejsc, które nie reprezentują konkretnych lokalizacji, np. określone na podstawie zakresów adresów (np. „ul. Główna 10–20”), odcinków trasy bez konkretnego numeru lub plus kodów, nie są obsługiwane. Identyfikatory miejsc dla wyników, które obejmują zbyt duży obszar (np. „Ocean Spokojny”), również nie są obsługiwane.
Korzystanie z autouzupełniania (nowego) w przypadku miejsc docelowych wyszukiwania
Aby zapewnić zgodność, użyj Autouzupełniania (nowego) do wyszukiwania identyfikatorów miejsc, które będą używane w wyszukiwaniu miejsc docelowych. Jeśli korzystasz z Autouzupełniania (nowego), wyniki należy filtrować według typu za pomocą parametru includedPrimaryTypes. Identyfikatory miejsc zwracane przez Autocomplete (New) z użyciem tego zalecanego filtra są obsługiwane przez Search Destinations:
"includedPrimaryTypes": [ "establishment", "point_of_interest", "premise", "street_address", "subpremise" ]
W żądaniu Autouzupełniania (nowego) nie ustawiaj flagi include_pure_service_area_businesses na true.
Wyszukiwanie miejsca docelowego według lokalizacji
Możesz wyszukać miejsce docelowe, podając współrzędne geograficzne: szerokość i długość geograficzną.
curl -X POST -d '{
"locationQuery": {
"location": {
"latitude": 37.37348780,
"longitude": -122.05678064
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Wysyłanie żądania za pomocą protokołu OAuth
Interfejs Geocoding API w wersji 4 obsługuje OAuth 2.0 na potrzeby uwierzytelniania. Aby używać protokołu OAuth z interfejsem Geocoding API, tokenowi OAuth należy przypisać odpowiedni zakres. Geocoding API obsługuje te zakresy do użycia z metodą Destinations:
https://www.googleapis.com/auth/maps-platform.geocode– używaj ze wszystkimi metodami Geocoding API.
Możesz też użyć ogólnego zakresu https://www.googleapis.com/auth/cloud-platform
dla wszystkich metod interfejsu Geocoding API. Ten zakres jest przydatny podczas programowania, ale nie w środowisku produkcyjnym, ponieważ jest to zakres ogólny, który umożliwia dostęp do wszystkich metod.
Więcej informacji i przykładów znajdziesz w artykule Korzystanie z OAuth.
Odpowiedź dotycząca miejsc docelowych wyszukiwania
Odpowiedź interfejsu Search Destinations zawiera bogaty, hiperlokalny kontekst dotyczący lokalizacji.
Obiekty PlaceView w odpowiedzi Search Destinations (takie jak primary, elementy w containingPlaces i landmarks) używają pól do wskazania typu miejsca:
types: tablica ciągów znaków wskazujących typy miejsca.primaryType: ciąg znaków wskazujący główny typ miejsca.
Możliwe wartości ciągów znaków dla parametrów types i primaryType pochodzą z tabel A i B na stronie Typy miejsc (nowe).
W tej sekcji opisujemy najważniejsze pola odpowiedzi. Szczegółowe informacje o wszystkich polach odpowiedzi znajdziesz w dokumentacji API.
primary
Główne miejsce zidentyfikowane przez zapytanie w żądaniu.
addressComponents
Tablica zawierająca oddzielne komponenty, które mają zastosowanie do tego adresu.
Każdy komponent adresu zawiera zwykle te pola:
types[]to tablica wskazująca typ komponentu adresu. Zobacz listę obsługiwanych typów.longTextto pełny opis tekstowy lub nazwa komponentu adresu zwracanego przez geokoder.shortTextto skrócona nazwa tekstowa komponentu adresu, jeśli jest dostępna. Na przykład komponent adresu dla stanu Alaska może miećlongText„Alaska” ishortText„AK” z dwuliterowym skrótem pocztowym.languageCodeto język używany do formatowania tego komponentu w notacji CLDR.
containingPlaces
Większe obiekty, których częścią jest główne miejsce docelowe (np. centrum handlowe, w którym znajduje się sklep).
subDestinations
bardziej szczegółowe lokalizacje w obrębie głównego miejsca docelowego (np. mieszkania w budynku).
entrances
Obiekty w tablicy entrances[] mają te pola:
locationPojedyncza para współrzędnych geograficznych (szerokość/długość geograficzna), która określa lokalizację punktu wejścia i wyjścia z miejsca.
entrance_tags[]Tablica tagów wejścia opisujących cechy wejścia. Obsługiwana jest ta wartość:
"PREFERRED"
Wskazuje, że to wejście prawdopodobnie zapewnia fizyczny dostęp do zwróconego miejsca. Miejsce może mieć kilka preferowanych wejść. Jeśli wejście nie ma tego tagu, oznacza to, że znajduje się ono fizycznie w tym samym budynku, ale niekoniecznie zapewnia dostęp do danego miejsca.
Jeśli na przykład zwrócone miejsce to restauracja w centrum handlowym, wejścia
"PREFERRED"będą prowadzić do samej restauracji, a inne zwrócone wejścia będą prowadzić do budynku, np. do innych restauracji w centrum handlowym.Jeśli zwrócone miejsce jest budynkiem,
"PREFERRED"wejścia będą prowadzić do „głównej” części budynku. Na przykład w centrum handlowym wejścia"PREFERRED"będą prowadzić do głównego foyer, ale jeśli wejście prowadzi tylko do sklepu z boku budynku, nie będzie to wejście"PREFERRED".streetViewThumbnailistreetViewAnnotationParametry interfejsu Street View Static API, które umożliwiają wyświetlanie odpowiednich zdjęć tych lokalizacji. Więcej informacji o tych polach
structureType
Typ struktury, którą reprezentuje to miejsce.
POINTLokalizacja punktu.
SECTIONPodsekcja budynku.
BUILDINGBudynek.
GROUNDSDuży obszar, który zwykle obejmuje kilka budynków, np. kampus uniwersytecki, kompleks apartamentów lub centrum handlowe.
navigationPoints
Pole navigationPoints w odpowiedzi interfejsu Geocoding API zawiera listę punktów, które są przydatne podczas nawigowania do miejsca. Powinny być używane jako punkty początkowe lub końcowe podczas wyznaczania trasy w sieci dróg z miejsca lub do miejsca.
Każdy punkt nawigacyjny zawiera te wartości:
navigationPointTokento token zawierający informacje kontekstowe w polunavigationPoints. Możesz wysłać ten token do interfejsów API wyznaczania trasy i nawigacji, aby ulepszyć wyznaczanie trasy i wrażenia kierowcy w aplikacji. Więcej informacji znajdziesz w artykule Wyznaczanie trasy za pomocą tokenów punktów nawigacyjnych.locationzawiera wartość szerokości i długości geograficznej punktu nawigacyjnego. Ta lokalizacja będzie zawsze bardzo blisko sieci dróg i będzie stanowić idealny punkt zatrzymania lub punkt początkowy nawigacji do i z danego miejsca. Punkt jest celowo nieco przesunięty względem osi drogi, aby wyraźnie zaznaczyć stronę drogi, po której znajduje się miejsce.travelModesto lista środków transportu, z których można dotrzeć do punktu nawigacyjnego:"DRIVE"to tryb podróży odpowiadający wskazówkom dojazdu."WALK"to środek transportu odpowiadający trasie pieszej.
usagesto lista zastosowań obsługiwanych przez punkt nawigacyjny. Zastosowania mogą być:"DROPOFF""PICKUP""PARKING"
W przypadku odbiorów i nadawania użyj punktu nawigacyjnego, w którym tryb podróży to DRIVE, a użycie to PICKUP lub DROPOFF. Jeśli punkty odbioru lub dostawy są niedostępne, użyj najwyższego punktu nawigacji samochodowej.
streetViewThumbnailientranceAnnotationudostępniają parametry interfejsu Street View Static API, dzięki czemu możesz wyświetlać odpowiednie zdjęcia tych lokalizacji. Więcej informacji o tych polach
altitude_meterszawiera wysokość punktu nawigacyjnego w metrach względem elipsoidy WGS-84. W przypadku fragmentów drogi ułożonych pionowo użyj polaaltitude_meters, aby wybrać najlepszy fragment drogi, do którego system ma nawigować.
landmarks
Ważne miejsca w pobliżu, które pomogą użytkownikom poznać okolicę miejsca docelowego.
Każdy punkt orientacyjny zawiera te pola:
placeto obiektPlaceView, który reprezentuje ten punkt orientacyjny.relationalDescriptionto zrozumiały dla człowieka opis relacji między miejscem docelowym a punktem orientacyjnym, np. „W pobliżu Empire State Building” lub „Naprzeciwko Białego Domu”.tags[]to tablica tagów opisujących, jak można wykorzystać punkt orientacyjny w kontekście miejsca docelowego:"ADDRESS": znane miejsce w okolicy, które może służyć do określenia ogólnej lokalizacji miejsca docelowego."ARRIVAL": miejsce, które może pomóc dotrzeć do celu, przydatne do nawigacji w pobliżu miejsca docelowego.
straightLineDistanceMetersto odległość w metrach w linii prostej od tego punktu orientacyjnego do miejsca docelowego.travelDistanceMetersto odległość w metrach od tego punktu orientacyjnego do miejsca docelowego.
arrivalSummary
Statystyki oparte na AI, które pomagają w dotarciu na miejsce. Zobacz podsumowania oparte na AI.
parkingOptions
Szczegółowe informacje o parkingu.
Format odpowiedzi
SearchDestinations zwraca obiekt SearchDestinationsResponse w tym formacie JSON:
{ "destinations": [ { "primary": { "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w", "displayName": { "text": "Arby's", "languageCode": "en" }, "primaryType": "fast_food_restaurant", "types": [ "fast_food_restaurant", "sandwich_shop", "deli", "meal_takeaway", "food_delivery", "american_restaurant", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Arby's, 601 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "601 S Bernardo Ave" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3734545, "longitude": -122.05693269999998 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.056930138027, 37.3735253692531 ], [ -122.056960139391, 37.3735372663597 ], [ -122.056994129366, 37.3734828786847 ], [ -122.056969677395, 37.3734731161089 ], [ -122.057061762447, 37.3733261309656 ], [ -122.056979388817, 37.3732935577128 ], [ -122.056798860285, 37.3735818838642 ], [ -122.056875858081, 37.3736121235316 ], [ -122.056930138027, 37.3735253692531 ] ] ] } }, "containingPlaces": [ { "place": "places/ChIJYfdAFum2j4ARIcL2tjME3Sw", "displayName": { "text": "Cherry Chase Shopping Center", "languageCode": "en" }, "primaryType": "shopping_mall", "types": [ "shopping_mall", "point_of_interest", "establishment" ], "formattedAddress": "Cherry Chase Shopping Center, 663 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1020", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "663 S Bernardo Ave" ] }, "structureType": "GROUNDS", "location": { "latitude": 37.3731231, "longitude": -122.0578211 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.057112227103, 37.3714618008523 ], [ -122.057076849821, 37.3715743611411 ], [ -122.056963607756, 37.3719081793948 ], [ -122.056865279559, 37.3722026053835 ], [ -122.056687872374, 37.3727258358476 ], [ -122.056580005889, 37.3730511370747 ], [ -122.056498845827, 37.3732994782583 ], [ -122.056338259713, 37.3737878663325 ], [ -122.056618678291, 37.373887693582 ], [ -122.056912102521, 37.3740010327191 ], [ -122.057532418159, 37.3742476426462 ], [ -122.057673926626, 37.3742441740031 ], [ -122.057735663106, 37.3742328516943 ], [ -122.057766531332, 37.3742220604378 ], [ -122.057797572967, 37.37420520725 ], [ -122.057828267759, 37.3741852342085 ], [ -122.058060299297, 37.3740060842535 ], [ -122.058199726081, 37.3737861673422 ], [ -122.05836707267, 37.373524542556 ], [ -122.058569622393, 37.3732018598683 ], [ -122.0587638478, 37.3728890198039 ], [ -122.058934661823, 37.3726036257774 ], [ -122.059164956851, 37.3722498383629 ], [ -122.058997784906, 37.3721804442035 ], [ -122.057936479838, 37.3717605636234 ], [ -122.057495827092, 37.3715860151634 ], [ -122.057112227103, 37.3714618008523 ] ] ] } } ], "landmarks": [ { "place": { "place": "places/ChIJXXTe7Oi2j4ARoMTA-D6Hjpg", "displayName": { "text": "Chase Bank", "languageCode": "en" }, "primaryType": "bank", "types": [ "bank", "atm", "finance", "point_of_interest", "establishment" ], "formattedAddress": "Chase Bank, 1234 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1234 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.373579, "longitude": -122.05752700000001 } }, "relationalDescription": { "text": "Near Chase Bank", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 61.182193756103516, "travelDistanceMeters": 63.075645446777344 }, { "place": { "place": "places/ChIJteQ0Fum2j4ARGi3tqK4Zm14", "displayName": { "text": "Safeway", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "butcher_shop", "florist", "deli", "supermarket", "bakery", "food_delivery", "market", "manufacturer", "food_store", "store", "food", "service", "point_of_interest", "establishment" ], "formattedAddress": "Safeway, 639 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "639 S Bernardo Ave" ] }, "structureType": "POINT", "location": { "latitude": 37.3727912, "longitude": -122.0581172 } }, "relationalDescription": { "text": "Around the corner from Safeway", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 158.65606689453125, "travelDistanceMeters": 131.1669921875 }, { "place": { "place": "places/ChIJu-PSYui2j4ARNiwOwBApGqk", "displayName": { "text": "Oil Changers", "languageCode": "en" }, "types": [ "car_repair", "service", "point_of_interest", "establishment" ], "formattedAddress": "Oil Changers, 1240 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1240 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3743054, "longitude": -122.0584272 } }, "relationalDescription": { "text": "Down the road from Oil Changers", "languageCode": "en" }, "tags": [ "ARRIVAL" ], "straightLineDistanceMeters": 140.52459716796875, "travelDistanceMeters": 143.24220275878906 }, { "place": { "place": "places/ChIJKRbl5oG3j4ARwuvPGUmtCj0", "displayName": { "text": "Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "cake_shop", "supermarket", "asian_grocery_store", "indian_restaurant", "meal_takeaway", "bakery", "manufacturer", "wholesaler", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Apni Mandi Farmers Market Sunnyvale, 1111 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1056", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1111 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3737199, "longitude": -122.0522958 } }, "relationalDescription": { "text": "Near Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 410.37435913085938, "travelDistanceMeters": 479.49893188476562 }, { "place": { "place": "places/ChIJ8enMlui2j4AR2xXK5EHDhBs", "displayName": { "text": "Starbird Chicken", "languageCode": "en" }, "primaryType": "chicken_restaurant", "types": [ "chicken_restaurant", "fast_food_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "Starbird Chicken, 1241 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1028", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1241 W El Camino Real" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3746764, "longitude": -122.05708860000001 }, "displayPolygon": { "coordinates": [ [ [ -122.057003840785, 37.3747648209809 ], [ -122.057136852459, 37.3747919153144 ], [ -122.057205005705, 37.3745815131859 ], [ -122.057071994114, 37.3745544186944 ], [ -122.057003840785, 37.3747648209809 ] ] ], "type": "Polygon" } }, "relationalDescription": { "text": "Near Starbird Chicken", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 87.348007202148438, "travelDistanceMeters": 214.08084106445312 } ], "entrances": [ { "location": { "latitude": 37.3735328, "longitude": -122.05694879999999 }, "tags": [ "PREFERRED" ], "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w" } ], "navigationPoints": [ { "navigationPointToken": "ChIJeMt61tqvQkARWT2716SDXsASEgljyy_n6LaPgBH9LoGUMNHjbBoSCWPLL-foto-AEf0ugZQw0eNsIhIJhf5y6ei2j4ARz7yBW5KAPI4", "location": { "latitude": 37.3738659, "longitude": -122.05693620000001 }, "travelModes": [ "DRIVE", "WALK" ], "usages": [ "PARKING" ] } ] } ] }
Wymagane parametry
- W żądaniu do interfejsu API musi być podany jeden z tych 3 parametrów, który określa adres, miejsce lub lokalizację, w której ma być wyszukiwane miejsce docelowe:
addressQuery– adres, który chcesz wyszukać.place– identyfikator miejsca, które chcesz wyszukać.locationQuery– współrzędne geograficzne wyszukiwanej lokalizacji.
FieldMask
Określ listę pól, które mają zostać zwrócone w odpowiedzi, tworząc maskę pola odpowiedzi. Przekaż maskę pola odpowiedzi do metody, używając parametru adresu URL
$fieldslubfieldsalbo nagłówka HTTPX-Goog-FieldMask. Na przykład poniższe żądanie zwróci tylko wejścia, punkty nawigacyjne i identyfikator miejsca głównego miejsca docelowego.curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \ -H "X-Goog-Api-Key: API_KEY" \ -H "Content-Type: application/json" \ -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary.place" \ https://geocode.googleapis.com/v4/geocode/destinationsW odpowiedzi nie ma domyślnej listy zwracanych pól. Jeśli pominiesz maskę pola, metoda zwróci błąd. Ustaw maskę pola na
*, aby zwrócić wszystkie pola. Więcej informacji znajdziesz w artykule Wybieranie pól do zwrócenia.
Parametry opcjonalne
-
travelModes
Określa typy
navigationPoints, które mają być zwracane. Punkty nawigacyjne dla innych środków transportu zostaną odfiltrowane. Jeśli parametrtravelModesnie jest ustawiony, mogą być zwracane punkty nawigacyjne wszystkich środków transportu. languageCode
Język, w którym mają być zwracane wyniki.
- Zobacz listę obsługiwanych języków. Google często aktualizuje obsługiwane języki, więc ta lista może nie być wyczerpująca.
-
Jeśli nie podasz parametru
languageCode, interfejs API domyślnie użyje języka i pisma lokalnego. Jeśli podasz nieprawidłowy kod języka, API zwróci błądINVALID_ARGUMENT. - Interfejs API stara się podać adres ulicy, który jest czytelny zarówno dla użytkownika, jak i miejscowych. Aby osiągnąć ten cel, zwraca adresy pocztowe w języku lokalnym, w razie potrzeby transliterowane na pismo czytelne dla użytkownika, z uwzględnieniem preferowanego języka. Wszystkie inne adresy są zwracane w preferowanym języku. Wszystkie komponenty adresu są zwracane w tym samym języku, który jest wybierany na podstawie pierwszego komponentu.
- Jeśli nazwa nie jest dostępna w preferowanym języku, interfejs API używa najbliższego dopasowania.
- Preferowany język ma niewielki wpływ na zbiór wyników, które interfejs API wybiera do zwrócenia, oraz na kolejność, w jakiej są one zwracane. Geokoder interpretuje skróty w różny sposób w zależności od języka, np. skróty typów ulic lub synonimy, które mogą być prawidłowe w jednym języku, ale nie w innym.
regionCode
Kod regionu jako dwuznakowy kod CLDR. Nie ma wartości domyślnej. Większość kodów CLDR jest identyczna z kodami ISO 3166-1.
Podczas geokodowania adresu, czyli geokodowania do przodu, ten parametr może wpływać na wyniki usługi, ale nie może ich w pełni ograniczać do określonego regionu. Tego parametru można używać do formatowania adresu podczas geokodowania lokalizacji lub miejsca, odwrotnego geokodowania lub geokodowania miejsca. We wszystkich przypadkach ten parametr może wpływać na wyniki zgodnie z obowiązującymi przepisami.
-
placeFilter
Umożliwia filtrowanie wyników wyszukiwania
locationQuerypod kątem określonych wymagań, np. zwracanie tylko miejsc docelowych, które są budynkami, lub tylko tych, które mają dokładne adresy.Filtrowanie według szczegółowości strukturalnej
Filtr
structureTypeumożliwia określenie rodzaju struktur zwracanych przez zapytanie:- Wyodrębnianie budynków: użyj ikony
"structureType": "BUILDING", aby wyświetlić zarysy budynków na mapie lub uzyskać szczegółowe informacje o konkretnym obiekcie. - Zrozumienie kompleksów: użyj
"structureType": "GROUNDS", aby upewnić się, że głównym wynikiem jest cały teren. Jest to przydatne, gdy wysyłasz zapytania o większe obszary, takie jak kampusy uniwersyteckie czy centra handlowe. - Skupienie się na jednostkach/sekcjach: użyj
"structureType": "SECTION", aby zidentyfikować sekcje w budynku.
Zapewnianie przydatnych adresów
Nie wszystkie miejsca mają jasne adresy na poziomie ulicy. Filtr
addressabilitypomaga kontrolować jakość adresów w wynikach:- Wymagaj wyraźnego adresu podstawowego: aby główny wynik docelowy zawsze zawierał adres lub nazwę na poziomie ulicy, użyj
"addressability": "PRIMARY". Jest to przydatne do celów nawigacji lub wyświetlania, gdy kluczowe jest podanie dokładnego adresu. - Zezwalaj na adresy w miejscach podrzędnych: w przypadkach, gdy miejsce główne może nie mieć adresu, ale mają go jednostki w nim (np. mieszkania w budynku),
"addressability": "WEAK"zapewnia, że co najmniej miejsce główne lub jedno z jego miejsc podrzędnych ma adres. - Dowolny wynik: jeśli obecność adresu nie jest istotna w Twoim przypadku użycia, użyj
"addressability": "ANY". Jest to wysoce zalecane, gdy potrzebujesz tylko atrybutów geometrycznych, takich jak kontury budynków i punkty nawigacyjne, ponieważ zwiększa to dokładność wyników.
Przykład: filtrowanie budynków z adresem
curl -X POST -d '{ "locationQuery": { "location": { "latitude": 37.37348780, "longitude": -122.05678064 }, "placeFilter": { "structureType": "BUILDING", "addressability": "PRIMARY" } }, "languageCode": "en" }' \\ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \\ -H "X-Goog-FieldMask: place" \\ https://geocode.googleapis.com/v4/geocode/destinations - Wyodrębnianie budynków: użyj ikony