Wprowadzenie
Żądanie do interfejsu Distance Matrix API (starszego) 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) 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ą rozdzielone 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 punktem końcowym 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 geograficznych:
-
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 przekształca go we 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 – może to nie być punkt dostępu do nieruchomości ani nawet droga, która szybko lub bezpiecznie doprowadzi 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 geograficzne, zostaną one dopasowane 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 kod obszaru i 6-znakowy lub dłuższy kod lokalny (
849VCWC8+R9jest kodowany 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 kod obszaru 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 oddzielonych znakiem
|. 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 preferowaną godzinę przyjazdu w przypadku wskazówek dojazdu transportem publicznym w sekundach od północy 1 stycznia 1970 r. czasu UTC. Możesz podać
departure_timelubarrival_time, ale nie oba te elementy. 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, a argument tego parametru 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 dotyczących pieszych i wskazówek dojazdu transportem publicznym.
Możesz poprosić o wyznaczenie trasy, która omija dowolną kombinację dróg płatnych, 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ą ograniczony element. Wpływa ono na wynik, faworyzując bardziej korzystne trasy. -
-
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 jest data
departure_timepóź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 tryb podróży to transport publiczny, możesz opcjonalnie określić jedną z wartości
departure_timelubarrival_time. Jeśli nie podasz żadnego z tych czasów, 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 trybem podróży jest jazda samochodem, możesz określić
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żący czas lub na czas w przyszłości. Nie może to być data z przeszłości.
Uwaga: jeśli czas odjazdu nie zostanie określony, wybór trasy i czas trwania podróży będą zależeć od sieci dróg i średnich warunków ruchu niezależnych od czasu. Wyniki 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_time, gdymode=driving, są 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 tryb podróży to 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 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 ulicy, który jest czytelny zarówno dla użytkownika, jak i 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 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. 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ć środek transportu. Domyślnie używany jest tryb
DRIVING. Domyślnie wskazówki są obliczane jako wskazówki dojazdu. Obsługiwane są te środki transportu:-
driving(domyślnie) oznacza standardowe wskazówki dojazdu lub odległość z wykorzystaniem sieci dróg. -
walkingprośby o wskazówki dojazdu pieszo lub o odległość do pokonania pieszo z wykorzystaniem ścieżek dla pieszych i chodników (jeśli są dostępne). -
bicyclingprośby o wskazówki dojazdu rowerem lub o odległość dojazdu rowerem z wykorzystaniem ś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 na transport publiczny, możesz opcjonalnie określićdeparture_timelubarrival_time. Jeśli nie podasz żadnego czasu,departure_timedomyślnie przyjmuje wartość „teraz” (czyli czas odjazdu jest domyślnie ustawiony na bieżący czas). Opcjonalnie możesz też dodaćtransit_modelubtransit_routing_preference.
Uwaga: wskazówki dojazdu pieszo i rowerem mogą czasami nie uwzględniać 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 i nie ma gwarancji, że prognozy z dużym wyprzedzeniem będą spójne. -
-
region
Kod regionu podany jako ccTLD („domena najwyższego poziomu”), czyli wartość dwuznakowa. Większość kodów ccTLD jest identyczna z kodami ISO 3166-1, z kilkoma wyjątkami. Na przykład krajowa domena najwyższego poziomu Wielkiej Brytanii 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óre zawiera prognozowany czas przejazdu z uwzględnieniem ruchu na podstawie średnich wartości historycznych. Parametr
traffic_modelmożna określić tylko w przypadku wskazówek dojazdu, w których żądanie zawiera parametrdeparture_time. Dostępne wartości tego parametru:-
best_guess(domyślny) oznacza, że zwrócony czas trwania duration_in_traffic powinien być najlepszym oszacowaniem czasu podróży na podstawie danych historycznych o warunkach na drodze i aktualnego natężenia ruchu. Im bliżej teraźniejszości jestdeparture_time, tym większe znaczenie ma aktualne natężenie ruchu. -
pessimisticoznacza, że zwrócony czas duration_in_traffic 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 być wyższy. -
optimisticoznacza, że zwrócony czas duration_in_traffic 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, 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 jaki model prognozowaniabest_guessintegruje aktualne natężenie 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 lub koleją miejską. -
rail– 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ć kolejność 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 uwzględniać ograniczone 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:
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 plusowych:
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 interfejsu Distance Matrix API):
- Parametr
modedotyczący podróży ma wartośćdrivinglub nie jest określony (drivingto domyślny środek transportu). - Żądanie zawiera prawidłowy
departure_timeparametr.departure_timemożna ustawić na bieżącą godzinę lub na późniejszy termin. Nie może to być data z 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.
Poniższy adres URL inicjuje żądanie dotyczące matrycy odległości w przypadku 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 interfejsu Distance Matrix API.
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ą podjeżdżać 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ślanie, ż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. W tym celu użyj 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 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że być używany tylko z tym ograniczeniem:
- Parametr
modetransportu 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 tę lokalizację w określonym kierunku. Kierunek jest określany za pomocą prefiksu heading=X:, gdzie X to 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
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ć
headingz adresami, identyfikatorami miejsc ani zakodowanymi liniami łamanymi.
Żądania i odpowiedzi dotyczące interfejsu Distance Matrix API
Poniżej znajduje się przykładowe żądanie HTTP, w którym prosisz o podanie odległości i czasu podróży z Vancouver w Kanadzie i Seattle w USA do San Francisco w USA i 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 miejsca początkowe i 2 miejsca docelowe:
| Vancouver – San Francisco | Vancouver – Victoria |
| Z Seattle do San Francisco | Seattle – Victoria |
Wyniki są zwracane w wierszach, z których każdy zawiera 1 miejsce początkowe połączone 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 postaci, w jakiej są. 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 powiodło się. Więcej informacji znajdziesz w sekcji DistanceMatrixStatus. |
|
opcjonalnie | tekst |
Ciąg znaków zawierający tekst w postaci zrozumiałej dla człowieka z informacjami o błędach, które wystąpiły podczas przetwarzania żądania. |
DistanceMatrixStatus
Kody stanu zwracane przez usługę.
- Symbol
OKoznacza, że odpowiedź zawiera prawidłowy wynik. -
INVALID_REQUESToznacza, że przesłane żądanie było nieprawidłowe. -
MAX_ELEMENTS_EXCEEDEDoznacza, że liczba miejsc docelowych i źródeł przekracza limit zapytań. -
MAX_DIMENSIONS_EXCEEDED– liczba punktów początkowych lub docelowych przekracza limit na zapytanie. -
Symbol
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 ustalony limit wykorzystania.
- Podana forma płatności nie jest już ważna (np. karta kredytowa utraciła ważność).
-
OVER_QUERY_LIMIToznacza, że usługa otrzymała zbyt wiele żądań z Twojej aplikacji 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 | Tablica<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 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ść tej trasy wyrażona w metrach (wartość) i tekstowo. Wartość tekstowa korzysta z układu jednostek określonego za pomocą parametru unit w pierwotnym żądaniu lub regionu pochodzenia. Więcej informacji znajdziesz w sekcji 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 sekcji 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 najlepszego oszacowania, zapoznaj się z
Więcej informacji znajdziesz w sekcji 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 opłatach. Więcej informacji znajdziesz w sekcji Opłata. |
Cena
Całkowita cena za przejazd na danej 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 wybranym języku. |
|
wymagane | liczba |
Łączna kwota przejazdu w określonej walucie. |
DistanceMatrixElementStatus
- Symbol
OKoznacza, że odpowiedź zawiera prawidłowy wynik. -
Symbol
NOT_FOUNDoznacza, że nie udało się określić kodu geograficznego źródła lub miejsca docelowego tej pary. -
ZERO_RESULTS– 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 | tekst |
Wartość w formie ciągu znaków. |
|
wymagane | liczba |
Wartość liczbowa. |