Wprowadzenie
Żądanie do interfejsu Distance Matrix API ma następującą formę:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
gdzie outputFormat może mieć jedną z tych wartości:
json(zalecane) oznacza dane wyjściowe w formacie JSON (JavaScript Object Notation).xmloznacza dane wyjściowe w formacie XML.
Niektóre parametry są wymagane, a inne opcjonalne. Zgodnie ze standardem adresów URL wszystkie parametry są rozdzielane znakiem ampersand (&). Wszystkie znaki zarezerwowane (np. znak plusa „+”) muszą być zakodowane na potrzeby adresu URL. Listę parametrów i ich możliwych wartości znajdziesz poniżej.
Wymagane parametry
-
miejsca docelowe
Co najmniej 1 lokalizacja, która będzie używana jako punkt końcowy do obliczania odległości i czasu podróży. Opcje parametru miejsc docelowych są takie same jak w przypadku parametru miejsc początkowych.
-
pochodzenie,
Punkt początkowy do obliczania odległości i czasu podróży. Możesz podać co najmniej 1 lokalizację rozdzieloną znakiem | w postaci identyfikatora miejsca, adresu lub współrzędnych określających szerokość i długość geograficzną:
-
Identyfikator miejsca: jeśli podasz identyfikator miejsca, musisz dodać przed nim prefiks
place_id:. -
Adres: jeśli podasz adres, usługa geokoduje ciąg znaków i konwertuje go na współrzędne geograficzne, aby obliczyć odległość. Te współrzędne mogą się różnić od tych zwracanych przez interfejs Geocoding API, np. mogą wskazywać wejście do budynku, a nie jego środek.
Uwaga: zalecamy używanie identyfikatorów miejsc zamiast adresów lub współrzędnych geograficznych. Użycie współrzędnych zawsze spowoduje przyciągnięcie punktu do drogi najbliższej tym współrzędnym, która może nie być punktem dostępu do nieruchomości ani 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 do niego.
- 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. Zalecane jest 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. Kody plus należy formatować w sposób pokazany poniżej (znaki plus są kodowane w adresie URL jako %2B, a spacje jako %20):
-
kod globalny to 4-znakowy numer kierunkowy i 6-znakowy lub dłuższy kod lokalny (
849VCWC8+R9jest zakodowany jako849VCWC8%2BR9). -
kod złożony to lokalny kod składający się z co najmniej 6 znaków, który zawiera wyraźną lokalizację (
CWC8+R9 Mountain View, CA, USAjest kodowany jakoCWC8%2BR9%20Mountain%20View%20CA%20USA).
-
kod globalny 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, jeśli 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 znakiem
enc:i dwukropkiem:. Na przykład:origins=enc:gfo}EtohhU: -
Możesz też dodać wiele zakodowanych linii łamanych rozdzielonych znakiem potoku
|. Na przykład:origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
-
Zakodowane linie łamane muszą być poprzedzone znakiem
-
Identyfikator miejsca: jeśli podasz identyfikator miejsca, musisz dodać przed nim prefiks
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ć wartość
departure_timelubarrival_time, ale nie obie jednocześnie. Pamiętaj, że wartośćarrival_timemusi być liczbą całkowitą. -
unikać
Odległości mogą być obliczane z uwzględnieniem pewnych ograniczeń. Ograniczenia są wskazywane za pomocą parametru avoid i argumentu tego parametru, który wskazuje ograniczenie, którego należy unikać. Obsługiwane są te ograniczenia:
-
tollsoznacza, że obliczona trasa powinna omijać drogi i mosty płatne. -
highwaysoznacza, że obliczona trasa powinna omijać autostrady. -
ferriesoznacza, że obliczona trasa powinna omijać promy. -
indooroznacza, że obliczona trasa powinna unikać schodów w budynkach w przypadku wskazówek pieszych i wskazówek dojazdu transportem publicznym.
Możesz poprosić o wyznaczenie trasy, która omija dowolną kombinację dróg płatnych, autostrad i przepraw promowych, 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 faworyzuje trasy bardziej korzystne. -
-
departure_time
Określa preferowaną godzinę odjazdu. Możesz podać czas jako liczbę całkowitą w sekundach od północy 1 stycznia 1970 r. czasu UTC. Jeśli podana data
departure_timejest późniejsza niż 9999-12-31T23:59:59.999999999Z, interfejs API przywróci datędeparture_timedo 9999-12-31T23:59:59.999999999Z. Możesz też podać wartość now, która ustawi godzinę odjazdu na bieżącą godzinę (z dokładnością do sekundy). Godzinę odjazdu można podać w 2 przypadkach:-
W przypadku żądań, w których środkiem transportu jest transport publiczny, możesz opcjonalnie określić jedną z wartości
departure_timelubarrival_time. Jeśli nie podasz żadnego czasu, domyślnie zostanie użyta wartośćdeparture_time(czyli czas odjazdu będzie domyślnie ustawiony na bieżący czas). -
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.departure_timemusi być ustawiona na bieżący czas lub czas w przyszłości. Nie może przypadać w przeszłości.
Uwaga: jeśli czas odjazdu nie zostanie określony, wybór trasy i czasu podróży będą zależeć od sieci dróg i średnich warunków na drodze niezależnych od czasu. Wyniki dla danego żądania mogą się zmieniać z czasem ze względu na zmiany w sieci dróg, zaktualizowane średnie warunki na drodze i rozproszony charakter usługi. Wyniki mogą się też różnić w przypadku niemal identycznych tras w dowolnym momencie lub z dowolną częstotliwością.Uwaga: żądania interfejsu Distance Matrix API określającedeparture_timewhenmode=drivingsą ograniczone do maksymalnie 100 elementów na żądanie. Liczba punktów początkowych pomnożona przez liczbę punktów docelowych określa liczbę elementów. -
W przypadku żądań, w których środkiem transportu jest transport publiczny, możesz opcjonalnie określić jedną z wartości
-
language
Język, w którym mają być zwracane wyniki.
- Zobacz listę obsługiwanych języków. Google często aktualizuje listę obsługiwanych języków, więc może ona nie być wyczerpująca.
-
Jeśli parametr
languagenie zostanie podany, interfejs API spróbuje użyć preferowanego języka określonego w nagłówkuAccept-Language. - Interfejs API stara się podać adres ulicy, który jest czytelny zarówno dla użytkownika, jak i dla mieszkańców. Aby to osiągnąć, zwraca adresy w języku lokalnym, a w razie potrzeby transliteruje je na pismo czytelne dla użytkownika, uwzględniając preferowany język. Wszystkie pozostałe 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żyje najbliższego dopasowania.
- Preferowany język ma niewielki wpływ na zestaw 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. Na przykład utca i tér to synonimy słowa „ulica” w języku węgierskim.
-
tryb
Aby obliczyć odległości i wyznaczyć trasę, możesz określić używany ś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ślnie) wskazuje standardowe wskazówki dojazdu lub odległość w sieci dróg. -
walkingprosi o trasę pieszą lub o odległość, korzystając ze ścieżek dla pieszych i chodników (jeśli są dostępne); -
bicyclingprosi o wskazówki dojazdu rowerem lub o odległość do pokonania rowerem, korzystając ze ścieżek rowerowych i preferowanych ulic (jeśli są dostępne). -
transitprosi o wskazówki dojazdu lub odległość, korzystając z tras transportu publicznego (tam, gdzie są dostępne); Jeśli ustawisz tryb transportu publicznego, możesz opcjonalnie określićdeparture_timelubarrival_time. Jeśli nie podasz żadnego czasu,departure_timedomyślnie będzie to bieżący czas (czyli czas odjazdu będzie domyślnie ustawiony 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 wyniku zwracają ostrzeżenia, które musisz wyświetlić użytkownikowi.Uwaga: trasy transportu publicznego są dostępne do 7 dni wstecz lub do 100 dni w przyszłości, 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ć z czasem, a w przypadku prognoz z dużym wyprzedzeniem nie ma gwarancji uzyskania spójnych wyników. -
-
region
Kod regionu określony jako 2-znakowa wartość ccTLD („domena najwyższego poziomu”). Większość kodów ccTLD jest identyczna z kodami ISO 3166-1, z kilkoma znaczącymi wyjątkami. Na przykład krajowa domena najwyższego poziomu Zjednoczonego Królestwa to „uk” (.co.uk), a 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. To ustawienie wpływa na wartość zwracaną w polu duration_in_traffic w odpowiedzi, która zawiera przewidywany czas podróży z uwzględnieniem ruchu na podstawie średnich wartości historycznych. Parametr
traffic_modelmożna określić tylko w przypadku wskazówek dojazdu, gdy żądanie zawiera parametrdeparture_time. Dostępne wartości tego parametru to:-
best_guess(domyślny) oznacza, że zwrócony atrybut duration_in_traffic powinien być najlepszym oszacowaniem czasu podróży na podstawie historycznych warunków na drodze i aktualnego natężenia ruchu. Im bliżej jestdeparture_timedo teraźniejszości, tym większe znaczenie ma ruch na żywo. -
pessimisticoznacza, że zwrócony czas trwania w ruchu powinien być dłuższy 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 on być większy. -
optimisticoznacza, że zwrócony czas trwania w ruchu powinien być krótszy 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_guesszapewni najbardziej przydatne prognozy w większości przypadków. Możliwe, żebest_guessprognoza czasu podróży będzie krótsza niżoptimisticlub dłuższa niżpessimisticze względu na sposób, w jakibest_guessmodel prognozowania integruje 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:
-
busoznacza, że obliczona trasa powinna preferować podróż autobusem. -
subwayoznacza, że obliczona trasa powinna preferować podróż metrem. -
trainoznacza, że obliczona trasa powinna preferować podróż pociągiem. -
tramoznacza, że obliczona trasa powinna preferować podróż tramwajem i koleją miejską. -
railoznacza, że obliczona trasa powinna preferować podróż pociągiem, tramwajem, koleją miejską i metrem. Jest to odpowiedniktransit_mode=train|tram|subway.
-
-
transit_routing_preference
Określa preferencje dotyczące tras transportu publicznego. Za pomocą tego parametru możesz zmienić preferencje dotyczące zwracanych opcji 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_walkingoznacza, że obliczona trasa powinna wymagać ograniczonej ilości chodzenia. -
fewer_transfersoznacza, że obliczona trasa powinna mieć 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 do określenia współrzędnych miejsca docelowego użyto 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żywamy kodów plus:
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 ruchu są używane, gdy wszystkie poniższe warunki są spełnione (są to warunki wymagane do otrzymania pola duration_in_traffic w odpowiedzi z interfejsu Distance Matrix API):
- Parametr
modepodróży ma wartośćdrivinglub nie jest określony (drivingto domyślny środek transportu). - Żądanie zawiera prawidłowy parametr
departure_time.departure_timemożna ustawić na bieżący czas lub na czas w przyszłości. Nie może przypadać w przeszłości.
Opcjonalnie możesz uwzględnić w żądaniu parametr traffic_model, aby określić założenia, które mają być używane podczas obliczania czasu w ruchu.
Poniższy adres URL inicjuje żądanie macierzy odległości dla odległości dojazdu samochodem między Bostonem w stanie Massachusetts lub Charlestown w stanie Massachusetts a Lexington w stanie Massachusetts i Concord w stanie Massachusetts. Żądanie zawiera czas odjazdu, który 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żywać modyfikatorów lokalizacji, aby wskazać kierowcom, jak mają podjechać do określonego miejsca. Użyj modyfikatora side_of_road, aby określić, po której stronie drogi mają się poruszać, lub podaj kierunek, aby wskazać prawidłowy kierunek jazdy.
określić, że obliczone trasy muszą przebiegać po określonej stronie drogi;
Podczas określania lokalizacji możesz poprosić, aby obliczona trasa przebiegała po tej stronie drogi, w kierunku której jest przesunięty 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 zatrzymał się po stronie drogi, do której był przesunięty 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 klawisza side_of_road: z zakodowanymi liniami łamanymi, modyfikator jest stosowany do każdej lokalizacji wzdłuż linii łamanej. Na przykład oba miejsca docelowe w tym żądaniu używają tego 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'
Modyfikator side_of_road: można stosować tylko z tym ograniczeniem:
- Parametr
modepodróży ma wartośćdrivinglub nie jest określony (drivingto domyślny środek transportu).
Określanie, że obliczone trasy mają mieć określony kierunek
Podczas określania lokalizacji możesz poprosić, aby obliczona trasa przebiegała przez daną lokalizację w określonym kierunku. Ten nagłówek jest określany za pomocą prefiksu heading=X:, gdzie X to wartość kąta w stopniach (liczba całkowita) z zakresu od 0 (włącznie) do 360 (wyłącznie). Kierunek 0 oznacza północ, 90 – wschód, a kolejne wartości są podawane 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'
Modyfikator heading=X: może być używany tylko z tymi ograniczeniami:
- Parametr podróży
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 poliliniami.
Żądania i odpowiedzi dotyczące macierzy odległości
Poniżej znajduje się przykładowe żądanie HTTP, w którym prosisz o podanie odległości i czasu trwania podróży z Vancouver w Kanadzie i z Seattle w USA do San Francisco w USA i do Victorii w Kanadzie.
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 punkty początkowe i 2 punkty docelowe:
| Z Vancouver do San Francisco | Vancouver – Victoria |
| Seattle–San Francisco | Seattle – Victoria |
Wyniki są zwracane w wierszach, z których każdy zawiera 1 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ócona przez interfejs API z pierwotnego żądania. Podobnie jak w przypadku |
|
wymagane | Array<string> |
Tablica adresów zwrócona przez interfejs API z pierwotnego żądania. Są one formatowane przez geokoder i dostosowywane do języka określonego w parametrze języka przekazanym w żądaniu. Te treści mają być odczytywane w takiej formie, w jakiej są wyświetlane. Nie analizuj sformatowanych adresów automatycznie. |
|
wymagane | Array<DistanceMatrixRow> |
Tablica elementów, z których każdy zawiera element Więcej informacji znajdziesz w sekcji DistanceMatrixRow. |
|
wymagane | DistanceMatrixStatus |
Zawiera stan żądania i może zawierać informacje do debugowania, które pomogą Ci ustalić, dlaczego żądanie nie zostało zrealizowane. Więcej informacji znajdziesz w sekcji DistanceMatrixStatus. |
|
opcjonalnie | ciąg znaków |
Ciąg znaków zawierający tekst błędów w postaci zrozumiałej dla człowieka, które wystąpiły podczas przetwarzania żądania. |
DistanceMatrixStatus
Kody stanu zwracane przez usługę.
OKoznacza, że odpowiedź zawiera prawidłowy wynik.-
INVALID_REQUESToznacza, że przesłane żądanie było nieprawidłowe. -
MAX_ELEMENTS_EXCEEDEDoznacza, że iloczyn miejsc pochodzenia i docelowych przekracza limit zapytań. -
Symbol
MAX_DIMENSIONS_EXCEEDEDoznacza, że liczba punktów początkowych lub docelowych przekracza limit na zapytanie. -
Symbol
OVER_DAILY_LIMIToznacza jedną z tych wartości:- Brak klucza interfejsu API lub jest on nieprawidłowy.
- Na Twoim koncie nie włączono płatności.
- Przekroczono samodzielnie ustalony 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 z Twojej aplikacji zbyt wiele żądań w dozwolonym okresie. -
REQUEST_DENIEDoznacza, że usługa odmówiła użycia przez Twoją aplikację usługi Distance Matrix. -
UNKNOWN_ERRORoznacza, że żądanie interfejsu Distance Matrix API nie mogło zostać przetworzone z powodu błędu serwera. Jeśli spróbujesz ponownie, żądanie może się powieść.
DistanceMatrixRow
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | Array<DistanceMatrixElement> |
Gdy Distance Matrix API zwraca wyniki, umieszcza je w tablicy wierszy JSON. Nawet jeśli nie zostaną zwrócone żadne wyniki (np. gdy nie istnieją źródła lub miejsca docelowe), funkcja zwraca pustą tablicę. Wiersze są uporządkowane według wartości parametru origin w żądaniu. Każdy wiersz odpowiada źródłu, a każdy element w tym wierszu – parze źródła i wartości docelowej. Każda tablica wierszy zawiera co najmniej 1 wpis elementu, który z kolei zawiera informacje o pojedynczej parze miejsc docelowych. Więcej informacji znajdziesz w sekcji DistanceMatrixElement. |
DistanceMatrixElement
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | DistanceMatrixElementStatus |
Stan elementu. Więcej informacji znajdziesz w sekcji DistanceMatrixElementStatus. |
|
opcjonalnie | TextValueObject |
Całkowita długość trasy wyrażona w metrach (wartość) i w postaci tekstu. Wartość tekstowa korzysta z układu jednostek określonego za pomocą parametru unit w pierwotnym żądaniu lub regionu pochodzenia. Więcej informacji znajdziesz w TextValueObject. |
|
opcjonalnie | TextValueObject |
Czas potrzebny na pokonanie tej trasy, wyrażony w sekundach (pole wartości) i tekstowo. Reprezentacja tekstowa jest lokalizowana zgodnie z parametrem języka zapytania. Więcej informacji znajdziesz w TextValueObject. |
|
opcjonalnie | TextValueObject |
Czas potrzebny na pokonanie tej trasy na podstawie aktualnych i historycznych warunków na drodze. W przypadku opcji, których możesz użyć, aby poprosić o zwrócenie wartości optymistycznej, pesymistycznej lub najbardziej prawdopodobnej, zapoznaj się z parametrem żądania
Więcej informacji znajdziesz w TextValueObject. |
|
opcjonalnie | Cena |
Jeśli jest dostępna, zawiera całkowitą cenę (czyli całkowity koszt biletu) na tej trasie. Ta właściwość jest zwracana tylko w przypadku zapytań dotyczących transportu publicznego i tylko w przypadku przewoźników, dla których dostępne są informacje o cenach. Więcej informacji znajdziesz w sekcji Opłata. |
Cena
Całkowita cena za trasę.
{
"currency" : "USD",
"value" : 6,
"text" : "$6.00"
}
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | ciąg znaków |
Kod waluty w formacie ISO 4217 wskazujący walutę, w której wyrażona jest kwota. |
|
wymagane | ciąg znaków |
Łączna kwota opłaty za przejazd sformatowana w wybranym języku. |
|
wymagane | liczba |
Łączna kwota opłaty w określonej walucie. |
DistanceMatrixElementStatus
OKoznacza, że odpowiedź zawiera prawidłowy wynik.-
Symbol
NOT_FOUNDoznacza, że nie udało się określić współrzędnych geograficznych źródła lub miejsca docelowego tego połączenia. -
ZERO_RESULTSoznacza, że nie udało się znaleźć trasy między miejscem początkowym a docelowym. -
MAX_ROUTE_LENGTH_EXCEEDEDoznacza, że żądana trasa jest zbyt długa i nie można jej przetworzyć.
TextValueObject
Obiekt zawierający wartość liczbową i jej sformatowaną reprezentację tekstową.
| Pole | Wymagane | Typ | Opis |
|---|---|---|---|
|
wymagane | ciąg znaków |
Wartość ciągu znaków. |
|
wymagane | liczba |
Wartość liczbowa. |