Wprowadzenie
Żądanie do interfejsu Distance Matrix API (starszego typu) ma następującą postać:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
gdzie outputFormat może mieć jedną z tych wartości:
json(zalecane) wskazuje dane wyjściowe w formacie JSON (JavaScript Object Notation).xmlwskazuje dane wyjściowe w formacie XML.
Niektóre parametry są wymagane, a inne opcjonalne. Zgodnie ze standardem adresów URL wszystkie parametry są rozdzielone znakiem ampersand (&). Wszystkie znaki zarezerwowane (np. znak plusa „+”) muszą być zakodowane na potrzeby adresu URL. Lista parametrów i ich możliwych wartości znajduje się poniżej.
Wymagane parametry
-
miejsca docelowe
Co najmniej 1 lokalizacja, która ma być używana jako punkt końcowy do obliczania odległości i czasu podróży. Opcje parametru destinations są takie same jak w przypadku parametru origins.
-
źródła
Punkt początkowy do obliczania odległości i czasu podróży. Możesz podać co najmniej 1 lokalizację, rozdzielając je znakiem kreski pionowej (|), w postaci identyfikatora miejsca, adresu lub współrzędnych geograficznych:
-
Identyfikator miejsca: jeśli podajesz identyfikator miejsca, musisz go poprzedzić ciągiem znaków
place_id:. -
Adres: jeśli podasz adres, usługa geokoduje ciąg znaków i konwertuje go na współrzędne szerokości i długości geograficznej, aby obliczyć odległość. Ta współrzędna może się różnić od współrzędnej zwracanej przez interfejs Geocoding API, np. może to być wejście do budynku, a nie jego środek.
Uwaga: zalecamy używanie identyfikatorów miejsc, a nie adresów czy współrzędnych geograficznych. Użycie współrzędnych zawsze spowoduje przyciągnięcie punktu do drogi znajdującej się najbliżej tych współrzędnych, która może nie być punktem dostępu do nieruchomości, a nawet drogą, która szybko lub bezpiecznie prowadzi do miejsca docelowego. Użycie adresu spowoduje podanie odległości do środka budynku, a nie do wejścia.
- Współrzędne: jeśli podasz współrzędne szerokości i długości geograficznej, zostaną one przyciągnięte do najbliższej drogi. Zalecamy przekazywanie identyfikatora miejsca. Jeśli przekazujesz współrzędne, upewnij się, że między wartościami szerokości i długości geograficznej nie ma spacji.
-
Kody Plus Code muszą być sformatowane jako kod globalny lub kod złożony. Sformatuj plus kody w sposób pokazany tutaj (znaki plusa są zastępowane przez %2B, a spacje przez %20):
-
global code to 4-znakowy numer kierunkowy i 6-znakowy lub dłuższy kod lokalny (
849VCWC8+R9jest kodowany jako849VCWC8%2BR9). -
kod złożony to kod lokalny składający się z co najmniej 6 znaków z wyraźną lokalizacją (
CWC8+R9 Mountain View, CA, USAjest kodowany jakoCWC8%2BR9%20Mountain%20View%20CA%20USA).
-
global code to 4-znakowy numer kierunkowy i 6-znakowy lub dłuższy kod lokalny (
-
Zakodowana linia łamana – możesz też podać zakodowany zestaw współrzędnych, korzystając z algorytmu zakodowanej linii łamanej. Jest to szczególnie przydatne, gdy masz dużą liczbę punktów początkowych, ponieważ adres URL jest znacznie krótszy, gdy używasz zakodowanej linii łamanej.
-
Zakodowane linie łamane muszą być poprzedzone ciągiem
enc:i dwukropkiem:. Na przykład:origins=enc:gfo}EtohhU: -
Możesz też uwzględnić wiele zakodowanych linii łamanych, rozdzielając je znakiem kreski pionowej
|. Na przykład:origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
-
Zakodowane linie łamane muszą być poprzedzone ciągiem
-
Identyfikator miejsca: jeśli podajesz identyfikator miejsca, musisz go poprzedzić ciągiem znaków
Parametry opcjonalne
-
arrival_time
Określa preferowany czas przyjazdu w przypadku wskazówek dojazdu transportem publicznym w sekundach od północy 1 stycznia 1970 r. czasu UTC. Możesz określić
departure_timelubarrival_time, ale nie obie te wartości. Pamiętaj, że wartośćarrival_timemusi być liczbą całkowitą. -
unikanie
Odległości mogą być obliczane z uwzględnieniem pewnych ograniczeń. Ograniczenia są wskazywane przez użycie parametru avoid i argumentu tego parametru, który wskazuje ograniczenie, którego należy unikać. Obsługiwane są te ograniczenia:
-
tollswskazuje, że obliczona trasa powinna omijać drogi i mosty płatne. -
highwayswskazuje, że obliczona trasa powinna omijać autostrady. -
ferrieswskazuje, że obliczona trasa powinna omijać promy. -
indoorwskazuje, że obliczona trasa powinna unikać schodów wewnątrz budynków w przypadku wskazówek dojazdu pieszo i transportem publicznym.
Możesz poprosić o trasę, która omija dowolną kombinację opłat, autostrad i promów, przekazując oba ograniczenia do parametru avoid. Na przykład
avoid=tolls|highways|ferries.Uwaga: dodanie ograniczeń nie wyklucza tras, które obejmują ograniczoną funkcję, ale wpływa na wynik, faworyzując bardziej korzystne trasy. -
-
departure_time
Określa preferowaną godzinę wyjazdu. Możesz określić czas jako liczbę całkowitą w sekundach od północy 1 stycznia 1970 r. czasu UTC. Jeśli podasz wartość
departure_timepóźniejszą niż 9999-12-31T23:59:59.999999999Z, interfejs API przywróci wartośćdeparture_timedo 9999-12-31T23:59:59.999999999Z. Możesz też podać wartość now, która ustawia czas odjazdu na bieżącą godzinę (z dokładnością do najbliższej sekundy). Godzinę odjazdu można określić w 2 przypadkach:-
W przypadku żądań, w których tryb podróży to transport publiczny: możesz opcjonalnie określić
departure_timelubarrival_time. Jeśli nie podano żadnej godziny,departure_timedomyślnie przyjmuje wartość „teraz” (czyli czas odjazdu domyślnie przyjmuje wartość bieżącego czasu). -
W przypadku żądań, w których tryb podróży to jazda samochodem: możesz określić parametr
departure_time, aby otrzymać trasę i czas trwania podróży (pole odpowiedzi: duration_in_traffic) uwzględniające warunki na drodze. Wartośćdeparture_timemusi być ustawiona na bieżącą godzinę lub godzinę w przyszłości. Nie może przypadać w przeszłości.
Uwaga: jeśli czas wyjazdu nie jest określony, wybór trasy i czas trwania są określane na podstawie sieci dróg i średnich warunków na drodze niezależnych od czasu. Wyniki dla danego żądania mogą się zmieniać w czasie ze względu na zmiany w sieci dróg, aktualizacje średnich warunków na drodze i rozproszony charakter usługi. Wyniki mogą się też różnić w przypadku niemal równoważnych tras w dowolnym momencie lub z dowolną częstotliwością.Uwaga: żądania macierzy odległości, które określajądeparture_time, gdymode=driving, są ograniczone do maksymalnie 100 elementów na żądanie. Liczba elementów jest iloczynem liczby miejsc początkowych i miejsc docelowych. -
W przypadku żądań, w których tryb podróży to transport publiczny: możesz opcjonalnie określić
-
language
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
language, interfejs API spróbuje użyć preferowanego języka określonego w nagłówkuAccept-Language. - Interfejs API stara się podać adres, który jest czytelny zarówno dla użytkownika, jak i dla mieszkańców. 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 zestaw wyników, które interfejs API zwraca, oraz na kolejność, w jakiej są 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. Na przykład utca i tér to synonimy słowa „ulica” w języku węgierskim.
-
tryb
Do obliczania odległości i wskazówek dojazdu możesz określić środek transportu. Domyślnie używany jest tryb
DRIVING. Domyślnie wskazówki dojazdu są obliczane jako wskazówki dojazdu samochodem. Obsługiwane są te środki transportu:-
driving(domyślna) wskazuje standardowe wskazówki dojazdu lub odległość z wykorzystaniem sieci dróg. -
walkingprośba o trasę pieszą lub odległość z wykorzystaniem ścieżek dla pieszych i chodników (jeśli są dostępne). -
bicycling– prośba o wskazówki dojazdu rowerem lub odległość z uwzględnieniem ścieżek rowerowych i preferowanych ulic (jeśli są dostępne). -
transitprosi o wskazówki dojazdu lub odległość z wykorzystaniem tras transportu publicznego (jeśli są dostępne). Jeśli ustawisz tryb na transport publiczny, możesz opcjonalnie określićdeparture_timelubarrival_time. Jeśli nie podasz żadnej godziny,departure_timedomyślnie przyjmie wartość „teraz” (czyli godzina odjazdu będzie domyślnie ustawiona na bieżącą godzinę). Możesz też opcjonalnie dodaćtransit_modelubtransit_routing_preference.
Uwaga: wskazówki dojazdu pieszo i rowerem mogą czasami nie obejmować wyraźnych ścieżek dla pieszych lub rowerzystów, dlatego w zwróconym wyniku pojawią się ostrzeżenia, które musisz wyświetlić użytkownikowi.Uwaga: przejazdy transportem publicznym są dostępne do 7 dni wstecz lub do 100 dni do przodu, w zależności od dostępności informacji o transporcie publicznym dostarczanych przez dostawców danych. Rozkłady jazdy transportu publicznego często się zmieniają, dostępne przejazdy mogą się zmieniać w czasie i nie ma gwarancji, że prognozy będą spójne z dużym wyprzedzeniem. -
-
region
Kod regionu określony jako dwuznakowa wartość ccTLD („domena najwyższego poziomu”). Większość kodów ccTLD jest identyczna z kodami ISO 3166-1, z kilkoma wyjątkami. Na przykład domena ccTLD Wielkiej Brytanii to „uk” (.co.uk), a jej kod ISO 3166-1 to „gb” (technicznie dla podmiotu „Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej”).
-
traffic_model
Określa założenia, które mają być używane podczas obliczania czasu w ruchu ulicznym. To ustawienie wpływa na wartość zwracaną w polu duration_in_traffic w odpowiedzi, która zawiera przewidywany czas w ruchu na podstawie średnich historycznych. Parametr
traffic_modelmożna określić tylko w przypadku wskazówek dojazdu, gdy żądanie zawiera parametrdeparture_time. Dostępne wartości tego parametru:-
best_guess(domyślna) wskazuje, że zwracana wartość duration_in_traffic powinna być najlepszym szacunkiem czasu podróży na podstawie informacji o historycznych i bieżących warunkach na drodze. Aktualne natężenie ruchu staje się tym ważniejsze, im bliżejdeparture_timejest obecnej chwili. -
pessimisticwskazuje, że zwrócona wartość duration_in_traffic powinna być dłuższa niż rzeczywisty czas podróży w większości dni, chociaż w niektóre dni, gdy warunki na drodze są szczególnie złe, może przekroczyć tę wartość. -
optimisticwskazuje, że zwrócona wartość duration_in_traffic powinna być krótsza niż rzeczywisty czas podróży w większości dni, chociaż w niektóre dni, gdy warunki na drodze są szczególnie dobre, czas podróży może być krótszy niż ta wartość.
Wartość domyślna
best_guesszapewnia najbardziej przydatne prognozy w większości przypadków. Możliwe, że prognoza czasu podróżybest_guessmoże być krótsza niżoptimisticlub dłuższa niżpessimisticze względu na sposób, w jaki model predykcyjnybest_guessintegruje informacje o aktualnym natężeniu ruchu. -
-
transit_mode
Określa co najmniej 1 preferowany środek transportu. Ten parametr można określić tylko w przypadku wskazówek dojazdu transportem publicznym. Parametr obsługuje te argumenty:
-
buswskazuje, że obliczona trasa powinna preferować podróż autobusem. -
subwaywskazuje, że obliczona trasa powinna preferować podróż metrem. -
trainwskazuje, że obliczona trasa powinna preferować podróż pociągiem. -
tramwskazuje, że obliczona trasa powinna preferować podróż tramwajem i koleją miejską. -
railwskazuje, że obliczona trasa powinna preferować podróż pociągiem, tramwajem, koleją miejską i metrem. Odpowiada totransit_mode=train|tram|subway.
-
-
transit_routing_preference
Określa preferencje dotyczące tras transportu publicznego. Za pomocą tego parametru możesz wpływać na zwracane opcje, zamiast akceptować domyślną najlepszą trasę wybraną przez interfejs API. Ten parametr można określić tylko w przypadku wskazówek dojazdu transportem publicznym. Parametr obsługuje te argumenty:
-
less_walkingwskazuje, że obliczona trasa powinna preferować ograniczoną ilość chodzenia. -
fewer_transferswskazuje, że obliczona trasa powinna preferować ograniczoną liczbę przesiadek.
-
-
jedn.
Określa system jednostek, który ma być używany podczas wyświetlania wyników.
Uwaga: to ustawienie układu jednostek wpływa tylko na tekst wyświetlany w polach odległości. Pola odległości zawierają też wartości, które są zawsze wyrażone w metrach.
Przykłady żądań
W tym przykładzie współrzędne miejsca docelowego są podane za pomocą współrzędnych geograficznych: szerokości i długości geograficznej.
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626 &origins=40.6655101%2C-73.89188969999998 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626&key=YOUR_API_KEY'
W tym przykładzie do określenia współrzędnych miejsca docelowego użyto kodów Plus Code:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=San%20Francisco &origins=849VCWC8%2BR9 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=849VCWC8%2BR9&destinations=San%20Francisco&key=YOUR_API_KEY'
Ten przykład pokazuje to samo żądanie z użyciem zakodowanej linii łamanej:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A &origins=40.6655101%2C-73.89188969999998 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A&key=YOUR_API_KEY'
Informacje o natężeniu ruchu
Informacje o natężeniu ruchu są używane, gdy spełnione są wszystkie te warunki (są to warunki wymagane do otrzymania pola duration_in_traffic w odpowiedzi macierzy odległości):
- Parametr
modepodróży ma wartośćdrivinglub nie jest określony (drivingto domyślny środek transportu). - Żądanie zawiera prawidłowy parametr
departure_time. Wartośćdeparture_timemożna ustawić na bieżącą godzinę lub na godzinę w przyszłości. Nie może przypadać w przeszłości.
Opcjonalnie możesz dodać do żądania parametr traffic_model, aby określić założenia, które mają być używane podczas obliczania czasu w ruchu ulicznym.
Poniższy adres URL inicjuje żądanie Distance Matrix dotyczące odległości drogowych między Bostonem (Massachusetts) lub Charlestown (Massachusetts) a Lexington (Massachusetts) i Concord (Massachusetts). Żądanie zawiera czas wyjazdu, co spełnia wszystkie wymagania dotyczące zwracania pola duration_in_traffic w odpowiedzi macierzy odległości.
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?departure_time=now &destinations=Lexington%2CMA%7CConcord%2CMA &origins=Boston%2CMA%7CCharlestown%2CMA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Boston%2CMA%7CCharlestown%2CMA&destinations=Lexington%2CMA%7CConcord%2CMA&departure_time=now&key=YOUR_API_KEY'
JSON
{ "destination_addresses": ["Lexington, MA, USA", "Concord, MA, USA"], "origin_addresses": ["Boston, MA, USA", "Charlestown, Boston, MA, USA"], "rows": [ { "elements": [ { "distance": { "text": "33.3 km", "value": 33253 }, "duration": { "text": "27 mins", "value": 1620 }, "duration_in_traffic": { "text": "34 mins", "value": 2019 }, "status": "OK", }, { "distance": { "text": "41.5 km", "value": 41491 }, "duration": { "text": "33 mins", "value": 1981 }, "duration_in_traffic": { "text": "39 mins", "value": 2342 }, "status": "OK", }, ], }, { "elements": [ { "distance": { "text": "31.1 km", "value": 31100 }, "duration": { "text": "26 mins", "value": 1543 }, "duration_in_traffic": { "text": "29 mins", "value": 1754 }, "status": "OK", }, { "distance": { "text": "39.3 km", "value": 39338 }, "duration": { "text": "32 mins", "value": 1904 }, "duration_in_traffic": { "text": "35 mins", "value": 2077 }, "status": "OK", }, ], }, ], "status": "OK", }
XML
OK Boston, MA, USA Charlestown, Boston, MA, USA Lexington, MA, USA Concord, MA, USA |
OK 1620 27 mins 33253 33.3 km 2018 34 mins OK 1981 33 mins 41491 41.5 km 2342 39 mins |
OK 1543 26 mins 31100 31.1 km 1759 29 mins OK 1904 32 mins 39338 39.3 km 2077 35 mins
Modyfikatory lokalizacji
Możesz użyć modyfikatorów lokalizacji, aby wskazać, jak kierowcy powinni dojechać do określonej lokalizacji. Możesz użyć modyfikatora side_of_road, aby określić, po której stronie drogi należy jechać, lub podać kierunek, aby wskazać właściwy kierunek jazdy.
określić, że obliczone trasy muszą przebiegać po określonej stronie drogi;
Podczas określania lokalizacji możesz poprosić o wyznaczenie trasy po tej stronie drogi, po której znajduje się punkt pośredni, używając prefiksu side_of_road:. Na przykład to żądanie zwróci odległość dla długiej trasy, tak aby pojazd zakończył jazdę po tej stronie drogi, po której znajduje się punkt pośredni:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=side_of_road%3A37.7663444%2C-122.4412006 &origins=37.7680296%2C-122.4375126 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=37.7680296%2C-122.4375126&destinations=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'
Gdy używasz parametru side_of_road: z zakodowanymi liniami łamanymi, modyfikator jest stosowany do każdej lokalizacji na linii łamanej. Na przykład oba miejsca docelowe w tym żądaniu używają parametru:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A &origins=San%20Francisco%20City%20hall &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=San%20Francisco%20City%20hall&destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A&key=YOUR_API_KEY'
Modyfikatora side_of_road: można używać tylko z tym ograniczeniem:
- Parametr
modema wartośćdrivinglub nie jest określony (drivingto domyślny środek transportu).
Określanie, że obliczone trasy powinny mieć określony kierunek
Podczas określania lokalizacji możesz poprosić o obliczenie trasy, która będzie przebiegać przez tę lokalizację w określonym kierunku. Ten kierunek jest określany za pomocą prefiksu heading=X:, gdzie X jest liczbą całkowitą z zakresu od 0 (włącznie) do 360 (wyłącznie). Kierunek 0 oznacza północ, 90 – wschód, i tak dalej zgodnie z ruchem wskazówek zegara. Na przykład w tym żądaniu obliczona trasa prowadzi na wschód od punktu początkowego, a następnie zawraca:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=37.773245%2C-122.469502 &origins=heading%3D90%3A37.773279%2C-122.468780 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=heading%3D90%3A37.773279%2C-122.468780&destinations=37.773245%2C-122.469502&key=YOUR_API_KEY'
Modyfikatora heading=X: można używać tylko z tymi ograniczeniami:
- Parametr
modema wartośćdriving,bicyclinglub nie jest określony (drivingto domyślny środek transportu). - Modyfikator
side_of_roadnie jest określony dla tej samej lokalizacji. - Lokalizacja jest określana za pomocą wartości szerokości i długości geograficznej. Nie możesz używać parametru
headingz adresami, identyfikatorami miejsc ani zakodowanymi łamanymi.
Żądania i odpowiedzi dotyczące macierzy odległości
Poniżej znajduje się przykładowe żądanie HTTP, które dotyczy odległości i czasu trwania podróży z Vancouver (Kolumbia Brytyjska, Kanada) i Seattle (Waszyngton, USA) do San Francisco (Kalifornia, USA) i Victorii (Kolumbia Brytyjska, Kanada).
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=San%20Francisco%7CVictoria%20BC &language=fr-FR &mode=bicycling &origins=Vancouver%20BC%7CSeattle &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Vancouver%20BC%7CSeattle&destinations=San%20Francisco%7CVictoria%20BC&mode=bicycling&language=fr-FR&key=YOUR_API_KEY'
To żądanie zwróci 4 elementy – 2 miejsca początkowe pomnożone przez 2 miejsca docelowe:
| Z Warszawy do Gdańska | Vancouver – Victoria |
| Z Wrocławia do Warszawy | Seattle – Victoria |
Wyniki są zwracane w wierszach, z których każdy zawiera jedno miejsce początkowe sparowane z każdym miejscem docelowym.
JSON
{ "destination_addresses": ["San Francisco, Californie, États-Unis", "Victoria, BC, Canada"], "origin_addresses": ["Vancouver, BC, Canada", "Seattle, Washington, États-Unis"], "rows": [ { "elements": [ { "distance": { "text": "1 712 km", "value": 1711765 }, "duration": { "text": "3 jours 16 heures", "value": 318119 }, "status": "OK", }, { "distance": { "text": "140 km", "value": 139695 }, "duration": { "text": "6 heures 49 minutes", "value": 24567 }, "status": "OK", }, ], }, { "elements": [ { "distance": { "text": "1 452 km", "value": 1451704 }, "duration": { "text": "3 jours 2 heures", "value": 266680 }, "status": "OK", }, { "distance": { "text": "146 km", "value": 146500 }, "duration": { "text": "2 heures 53 minutes", "value": 10374 }, "status": "OK", }, ], }, ], "status": "OK", }
XML
OK Vancouver, BC, Canada Seattle, Washington, États-Unis San Francisco, Californie, États-Unis Victoria, BC, Canada |
OK 318119 3 jours 16 heures 1711765 1 712 km OK 24567 6 heures 49 minutes 139695 140 km |
OK 266680 3 jours 2 heures 1451704 1 452 km OK 10374 2 heures 53 minutes 146500 146 km
DistanceMatrixResponse
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | Array<string> |
Tablica adresów zwróconych przez interfejs API z pierwotnego żądania. Podobnie jak w przypadku |
|
wymagane | Array<string> |
Tablica adresów zwróconych przez interfejs API z pierwotnego żądania. Są one formatowane przez geokoder i lokalizowane zgodnie z parametrem języka przekazanym w żądaniu. Te treści powinny być odczytywane w takiej postaci, w jakiej są. Nie analizuj sformatowanych adresów automatycznie. |
|
wymagane | thought Array<DistanceMatrixRow> |
Tablica elementów, z których każdy zawiera elementy Więcej informacji znajdziesz w artykule DistanceMatrixRow. |
|
wymagane | DistanceMatrixStatus |
Zawiera stan żądania i może zawierać informacje na potrzeby debugowania, które pomogą Ci ustalić, dlaczego żądanie się nie powiodło. Więcej informacji znajdziesz w sekcji DistanceMatrixStatus. |
|
opcjonalnie | tekst |
Ciąg znaków zawierający zrozumiały dla człowieka tekst błędów, które wystąpiły podczas przetwarzania żądania. |
DistanceMatrixStatus
Kody stanu zwracane przez usługę.
OKwskazuje, że odpowiedź zawiera prawidłowy wynik.-
INVALID_REQUESToznacza, że przesłane żądanie było nieprawidłowe. -
MAX_ELEMENTS_EXCEEDEDwskazuje, że iloczyn liczby miejsc początkowych i docelowych przekracza limit na zapytanie. -
MAX_DIMENSIONS_EXCEEDEDwskazuje, że liczba punktów początkowych lub docelowych przekracza limit na zapytanie. -
OVER_DAILY_LIMIToznacza dowolną z tych wartości:- Brak klucza interfejsu API lub jest on nieprawidłowy.
- Na Twoim koncie nie włączono płatności.
- Przekroczono samodzielnie nałożony limit wykorzystania.
- Podana forma płatności nie jest już ważna (np. karta kredytowa straciła ważność).
-
OVER_QUERY_LIMIToznacza, że usługa otrzymała zbyt wiele żądań z Twojej aplikacji w dozwolonym okresie. -
REQUEST_DENIEDwskazuje, że usługa odmówiła aplikacji dostępu do usługi macierzy odległości. -
UNKNOWN_ERRORwskazuje, że nie udało się przetworzyć żądania macierzy odległości z powodu błędu serwera. Jeśli spróbujesz ponownie, żądanie może się powieść.
DistanceMatrixRow
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | Array<DistanceMatrixElement> |
Gdy interfejs Distance Matrix API zwraca wyniki, umieszcza je w tablicy wierszy JSON. Nawet jeśli nie zostaną zwrócone żadne wyniki (np. gdy miejsca początkowe lub docelowe nie istnieją), nadal zwracana jest pusta tablica. Wiersze są uporządkowane według wartości w parametrze origin żądania. Każdy wiersz odpowiada miejscu początkowemu, a każdy element w tym wierszu odpowiada parze miejsca początkowego i wartości miejsca docelowego. Każda tablica wierszy zawiera co najmniej 1 wpis elementu, który z kolei zawiera informacje o pojedynczej parze miejsce początkowe – miejsce docelowe. Więcej informacji znajdziesz w artykule DistanceMatrixElement. |
DistanceMatrixElement
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | DistanceMatrixElementStatus |
Stan elementu. Więcej informacji znajdziesz w sekcji DistanceMatrixElementStatus. |
|
opcjonalnie | TextValueObject |
Łączna odległość na tej trasie wyrażona w metrach (wartość) i jako tekst. Wartość tekstowa używa układu jednostek określonego za pomocą parametru unit pierwotnego żądania lub regionu miejsca początkowego. Więcej informacji znajdziesz w opisie obiektu TextValueObject. |
|
opcjonalnie | TextValueObject |
Czas potrzebny na pokonanie tej trasy, wyrażony w sekundach (pole value) i jako tekst. Reprezentacja tekstowa jest lokalizowana zgodnie z parametrem języka zapytania. Więcej informacji znajdziesz w opisie obiektu TextValueObject. |
|
opcjonalnie | TextValueObject |
Czas potrzebny na pokonanie tej trasy, obliczony na podstawie bieżących i historycznych warunków na drodze. Więcej informacji o opcjach, których możesz użyć, aby poprosić o zwrócenie wartości optymistycznej, pesymistycznej lub najbardziej prawdopodobnej, znajdziesz w parametrze żądania
Więcej informacji znajdziesz w opisie obiektu TextValueObject. |
|
opcjonalnie | Fare |
Jeśli jest obecny, zawiera łączną opłatę (czyli łączny koszt biletów) na tej trasie. Ta właściwość jest zwracana tylko w przypadku żądań dotyczących transportu publicznego i tylko w przypadku dostawców transportu publicznego, u których dostępne są informacje o opłatach. Więcej informacji znajdziesz w sekcji Opłata. |
Cena
Łączna opłata za przejazd na trasie.
{
"currency" : "USD",
"value" : 6,
"text" : "$6.00"
}
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | tekst |
Kod waluty w formacie ISO 4217 wskazujący walutę, w której wyrażona jest kwota. |
|
wymagane | tekst |
Łączna kwota opłaty za przejazd sformatowana w żądanym języku. |
|
wymagane | liczba |
Łączna kwota opłaty za przejazd w określonej walucie. |
DistanceMatrixElementStatus
OKwskazuje, że odpowiedź zawiera prawidłowy wynik.-
NOT_FOUNDoznacza, że nie udało się wygenerować kodu geograficznego dla źródła lub miejsca docelowego tej pary. -
ZERO_RESULTSoznacza, że nie udało się znaleźć trasy między miejscem wyjazdu a miejscem docelowym. -
MAX_ROUTE_LENGTH_EXCEEDEDoznacza, że żądana trasa jest za długa i nie można jej przetworzyć.
TextValueObject
Obiekt zawierający wartość liczbową i jej sformatowaną reprezentację tekstową.
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | tekst |
Wartość w formie ciągu znaków. |
|
wymagane | liczba |
Wartość liczbowa. |