Przykłady trasy

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Ta usługa ma stan starszej wersji. Od października 2026 r. interfejsu Directions API (starsza wersja) nie będzie można włączać w nowych projektach Google Cloud. Istniejące projekty będą nadal w pełni obsługiwane. Aby korzystać z nowych funkcji i większej wydajności, przejdź na interfejs Routes API.

Przykładowe żądania

To żądanie zwraca wskazówki dojazdu z Toronto w Ontario do Montrealu w Quebecu.

URL

https://maps.googleapis.com/maps/api/directions/json?destination=Montreal
  &origin=Toronto
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key=YOUR_API_KEY'

Zmieniając parametry mode i avoid, można zmodyfikować początkowe żądanie, aby zwracało wskazówki dojazdu dla malowniczej trasy rowerowej, która omija główne autostrady.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?avoid=highways
  &destination=Montreal
  &mode=bicycling
  &origin=Toronto
  &key=YOUR_API_KEYYOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&avoid=highways&mode=bicycling&key=YOUR_API_KEY'YOUR_API_KEY'

To żądanie wyszukuje wskazówki dojazdu transportem publicznym z Brooklynu w Nowym Jorku do Queens w Nowym Jorku. Żądanie nie określa parametru departure_time, więc czas wyjazdu jest domyślnie ustawiony na bieżący czas:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Queens
  &mode=transit
  &origin=Brooklyn
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Brooklyn&destination=Queens&mode=transit&keyYOUR_API_KEY'

To żądanie dotyczące transportu publicznego zawiera konkretną godzinę odjazdu.

Uwaga: w tym przykładzie czas odjazdu jest określony jako 30 lipca 2012 r. o godzinie 9:45. Aby uniknąć błędu, przed przesłaniem żądania musisz zmienić parametr na czas w przyszłości.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?departure_time=1343641500
  &destination=Queens
  &mode=transit
  &origin=Brooklyn
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Brooklyn&destination=Queens&mode=transit&departure_time=1343641500&key=YOUR_API_KEY'

To żądanie używa plus kodów, aby zwrócić wskazówki dojazdu z H8MW+WP do GCG2+3M w Kolkacie w Indiach.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=GCG2%2B3M%20Kolkata%20India
  &origin=H8MW%2BWP%20Kolkata%20India
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=H8MW%2BWP%20Kolkata%20India&destination=GCG2%2B3M%20Kolkata%20India&key=YOUR_API_KEY'

To żądanie zwraca wskazówki dojazdu z Glasgow w Wielkiej Brytanii do Perth w Wielkiej Brytanii przy użyciu identyfikatorów miejsc.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=place_id%3AChIJA01I-8YVhkgRGJb0fW4UX7Y
  &origin=place_id%3AChIJ685WIFYViEgRHlHvBbiD5nE
  &keyYOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=place_id%3AChIJ685WIFYViEgRHlHvBbiD5nE&destination=place_id%3AChIJA01I-8YVhkgRGJb0fW4UX7Y&key=YOUR_API_KEY'

Środki transportu

Podczas obliczania wskazówek dojazdu możesz określić mode, którego chcesz użyć. Domyślnie trasy są obliczane jako trasy driving. Obsługiwane są te środki transportu:

  • driving (domyślna) wskazuje standardowe wskazówki dojazdu z wykorzystaniem sieci dróg.
  • walking prosi o trasę pieszą ścieżkami dla pieszych i chodnikami (jeśli są dostępne).
  • bicycling prosi o wskazówki dojazdu rowerem po ścieżkach rowerowych i preferowanych ulicach (jeśli są dostępne).
  • transit prosi o wskazówki dojazdu transportem publicznym (jeśli są dostępne). Jeśli ustawisz tryb na transit, możesz opcjonalnie określić departure_time lub arrival_time. Jeśli nie podasz żadnej z tych wartości, departure_time domyślnie przyjmie wartość „teraz” (czyli czas odjazdu będzie domyślnie ustawiony na bieżącą godzinę). Opcjonalnie możesz też dodać transit_mode lub transit_routing_preference.

Uwaga: wskazówki dojazdu rowerem i pieszo mogą czasami nie obejmować wyraźnych ścieżek dla pieszych lub rowerzystów, więc w zwróconym wyniku, który musisz wyświetlić użytkownikowi, pojawi się warnings.

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 na zapytanie o wskazówki dojazdu):

  • Parametr travel mode ma wartość driving lub nie jest określony (driving to domyślny środek transportu).
  • Żądanie zawiera prawidłowy parametr departure_time. Wartość departure_time można ustawić na bieżącą godzinę lub na godzinę w przyszłości. Nie może przypadać w przeszłości.
  • Żądanie nie zawiera punktów pośrednich postoju. Jeśli żądanie zawiera punkty pośrednie, przed każdym z nich dodaj prefiks via:, aby wpłynąć na trasę, ale uniknąć postojów. Na przykład
    &waypoints=via:San Francisco|via:Mountain View|...

Opcjonalnie możesz dołączyć 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 wskazówek dojazdu z Bostonu w stanie Massachusetts do Concord w stanie Massachusetts przez Charlestown i Lexington. Żądanie zawiera czas wyjazdu, który spełnia wszystkie wymagania dotyczące zwracania pola duration_in_traffic w odpowiedzi na żądanie wskazówek dojazdu.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?departure_time=now
  &destination=Concord%2C%20MA
  &origin=Boston%2C%20MA
  &waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA&departure_time=now&key=YOUR_API_KEY'

Punkty pośrednie

Podczas obliczania tras za pomocą interfejsu Directions API (starsza wersja) możesz określić punkty pośrednie, aby zwrócić trasę, która obejmuje przejazdy lub postoje w lokalizacjach pośrednich. Punkty pośrednie możesz dodawać do wskazówek dojazdu samochodem, pieszo lub rowerem, ale nie do wskazówek dojazdu transportem publicznym.

Określ lokalizacje w parametrze waypoints.

Możesz podać co najmniej 1 lokalizację, rozdzielając je znakiem kreski pionowej (| lub %7C), w postaci identyfikatora miejsca, adresu lub współrzędnych geograficznych. Domyślnie usługa Directions oblicza trasę, używając punktów pośrednich w podanej kolejności. Kolejność analizowania wartości punktu na trasie to identyfikator miejsca, współrzędne szerokości i długości geograficznej, a następnie adres.

  • Jeśli przekazujesz identyfikator miejsca, musisz go poprzedzić ciągiem place_id:. Identyfikatory miejsc możesz pobierać z interfejsów Geocoding API i Places API (w tym z funkcji autouzupełniania miejsc). Przykład użycia identyfikatorów miejsc z autouzupełniania miejsc znajdziesz w artykule Autouzupełnianie miejsc i wskazówki dojazdu. Więcej informacji o identyfikatorach miejsc znajdziesz w omówieniu identyfikatorów miejsc.

    Aby zapewnić skuteczność i dokładność, w miarę możliwości używaj identyfikatorów miejsc. Te identyfikatory są jednoznaczne, podobnie jak para wartości szerokości i długości geograficznej, i zapewniają korzyści związane z geokodowaniem na potrzeby wyznaczania trasy, takie jak punkty dostępu i zmienne dotyczące ruchu. W przeciwieństwie do adresu identyfikatory nie wymagają od usługi wyszukiwania ani pośredniego żądania informacji o miejscu, dzięki czemu wydajność jest lepsza.

  • Jeśli przekażesz współrzędne geograficzne, wartości zostaną przesłane bezpośrednio do serwera frontendowego, który obliczy wskazówki dojazdu bez geokodowania. Punkty są przyciągane do dróg i mogą nie zapewniać dokładności, której wymaga Twoja aplikacja. Używaj współrzędnych, gdy masz pewność, że wartości rzeczywiście określają punkty, których aplikacja potrzebuje do wyznaczania trasy, bez względu na możliwe punkty dostępu lub dodatkowe szczegóły geokodowania. Upewnij się, że wartości szerokości i długości geograficznej są rozdzielone przecinkiem (%2C), a nie spacją (%20).
  • Jeśli podasz adres, usługa wskazówek dojazdu przeprowadzi geokodowanie ciągu znaków i przekonwertuje go na współrzędne szerokości i długości geograficznej, aby obliczyć wskazówki dojazdu. Jeśli wartość adresu jest niejednoznaczna, może wywołać wyszukiwanie w celu odróżnienia go od podobnych adresów. Na przykład „ulica 1 Maja” może być pełną wartością lub częściową wartością dla „ulica 1 Maja 10” lub „ulica 1 Maja 12”. Ten wynik może się różnić od wyniku zwróconego przez interfejs Geocoding API. Aby uniknąć błędnej interpretacji, możesz używać identyfikatorów miejsc. Zapoznaj się z sekcją Rozwiązywanie problemów z wynikami żądania trasy.

Możesz też podać zakodowany zestaw punktów, korzystając z algorytmu zakodowanej linii łamanej. Zakodowany zestaw jest przydatny w przypadku dużej liczby punktów pośrednich, ponieważ adres URL jest znacznie krótszy. Wszystkie usługi internetowe mają limit adresu URL wynoszący 16 384 znaki.

  • Zakodowane linie łamane muszą być poprzedzone ciągiem enc: i dwukropkiem (:). Na przykład: waypoints=enc:gfo}EtohhU:.
  • Możesz też uwzględnić wiele zakodowanych linii łamanych, rozdzielając je pionową kreską (|). Na przykład: waypoints=via:enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:| via:enc:udymA{~bxM:

Poniższy adres URL inicjuje żądanie wskazówek dojazdu na trasie między Bostonem a Concord w stanie Massachusetts z przystankami w Charlestown i Lexington (w tej kolejności). W przykładzie użyto adresów:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Concord%2C%20MA
  &origin=Boston%2C%20MA
  &waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA&key=YOUR_API_KEY'

Wpływanie na trasy za pomocą punktów postoju i punktów przelotowych

W przypadku każdego punktu pośredniego w żądaniu odpowiedź ze wskazówkami dojazdu dodaje wpis do tablicy legs, aby podać szczegóły postojów na danym etapie podróży.

Jeśli chcesz wpłynąć na trasę za pomocą punktów pośrednich bez dodawania postoju, dodaj do punktu pośredniego prefiks via:. Punkty pośrednie z prefiksem via: nie dodają wpisu do tablicy legs, ale wyznaczają trasę przez dany punkt pośredni.

Poniższy adres URL modyfikuje poprzednie żądanie, tak aby trasa przebiegała przez Lexington bez zatrzymywania się:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Concord%2C%20MA
  &origin=Boston%2C%20MA
  &waypoints=Charlestown%2CMA%7Cvia%3ALexington%2CMA
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=Charlestown%2CMA%7Cvia%3ALexington%2CMA&key=YOUR_API_KEY'

Prefiks via: jest najbardziej skuteczny podczas tworzenia tras w odpowiedzi na przeciąganie przez użytkownika punktów na mapie. Dzięki temu użytkownik może zobaczyć, jak może wyglądać ostateczna trasa w czasie rzeczywistym, i upewnić się, że punkty pośrednie są umieszczone w miejscach dostępnych dla interfejsu Directions API (starsza wersja).

Ten adres URL żąda punktów na trasie za pomocą współrzędnych geograficznych: szerokości i długości geograficznej.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Perth%2C%20AU
  &origin=Sydney%2C%20AU
  &waypoints=via%3A-37.81223%2C144.96254%7Cvia%3A-34.92788%2C138.60008
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=via%3A-37.81223%2C144.96254%7Cvia%3A-34.92788%2C138.60008&key=YOUR_API_KEY'

Oto to samo żądanie z użyciem zakodowanej linii łamanej:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Perth%2C%20AU
  &origin=Sydney%2C%20AU
  &waypoints=via%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=via%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A&key=YOUR_API_KEY'

Pamiętaj, że możesz dowolnie łączyć specyfikator via: z modyfikatorami lokalizacji. Na przykład:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Perth%2C%20AU
  &origin=Sydney%2C%20AU
  &waypoints=side_of_road%3Avia%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=side_of_road%3Avia%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A&key=YOUR_API_KEY'

Optymalizowanie punktów na trasie

Domyślnie usługa Directions oblicza trasę przez podane punkty pośrednie w podanej kolejności. Opcjonalnie możesz przekazać optimize:true jako pierwszy argument w parametrze waypoints, aby umożliwić usłudze Directions optymalizację podanej trasy przez zmianę kolejności punktów na bardziej efektywną. (Ta optymalizacja jest zastosowaniem problemu komiwojażera). Czas podróży jest głównym czynnikiem, który jest optymalizowany, ale przy podejmowaniu decyzji o tym, która trasa jest najbardziej efektywna, można wziąć pod uwagę inne czynniki, takie jak odległość, liczba zakrętów i wiele innych. Aby usługa Directions mogła zoptymalizować trasę, wszystkie punkty pośrednie muszą być przystankami.

Jeśli poprosisz usługę Directions o zoptymalizowanie kolejności punktów pośrednich, ich kolejność zostanie zwrócona w polu waypoint_order w obiekcie routes. Pole waypoint_order zwraca wartości, które są indeksowane od zera.

W poniższym przykładzie obliczamy trasę drogową z Adelaide w Australii Południowej do każdego z głównych regionów winiarskich w Australii Południowej, korzystając z optymalizacji trasy.

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Adelaide%2C%20SA
  &origin=Adelaide%2C%20SA
  &waypoints=optimize%3Atrue%7CBarossa%20Valley%2C%20SA%7CClare%2C%20SA%7CConnawarra%2C%20SA%7CMcLaren%20Vale%2C%20SA
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Adelaide%2C%20SA&destination=Adelaide%2C%20SA&waypoints=optimize%3Atrue%7CBarossa%20Valley%2C%20SA%7CClare%2C%20SA%7CConnawarra%2C%20SA%7CMcLaren%20Vale%2C%20SA&key=YOUR_API_KEY'

Sprawdzenie obliczonej trasy wykaże, że obliczenia wykorzystują punkty pośrednie w tej kolejności:

"waypoint_order": [ 3, 2, 0, 1 ]

Ograniczenia

Można obliczyć wskazówki dojazdu, które uwzględniają określone ograniczenia. Ograniczenia są wskazywane przez parametr avoid i argument tego parametru, który wskazuje ograniczenie, którego należy unikać. Obsługiwane są te ograniczenia:

  • avoid=tolls
  • avoid=highways
  • avoid=ferries

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 zawierają ograniczone funkcje. Powoduje to, że wyniki są bardziej korzystne.

Układy jednostek

Wyniki wskazówek dojazdu zawierają pola text w polach distance, które mogą być wyświetlane użytkownikowi, aby wskazać odległość konkretnego „kroku” trasy. Domyślnie w tym tekście używany jest układ jednostek kraju lub regionu pochodzenia.

Na przykład trasa z „Chicago, IL” do „Toronto, ONT” wyświetli wyniki w milach, a trasa powrotna – w kilometrach. Możesz zastąpić ten system jednostek, ustawiając go bezpośrednio w parametrze units żądania i podając jedną z tych wartości:

  • metric określa użycie systemu metrycznego. Odległości tekstowe są zwracane w kilometrach i metrach.
  • imperial określa użycie systemu imperialnego (angielskiego). Odległości tekstowe są zwracane w milach i stopach.

Uwaga: to ustawienie układu jednostek wpływa tylko na text wyświetlane w polach distance. Pola distance zawierają też values, które są zawsze wyrażone w metrach.

Faworyzowanie regionu

Możesz ustawić usługę Directions, aby zwracała wyniki z określonego regionu, używając parametru region. Ten parametr przyjmuje 2-znakowy argument ccTLD (domena krajowa najwyższego poziomu) określający region. Większość kodów ccTLD jest identyczna z kodami ISO 3166-1 alfa-2, 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”). Obsługiwane regiony znajdziesz w artykule Szczegółowe informacje o zasięgu Google Maps Platform.

Możesz używać dowolnej domeny, w której główna aplikacja Map Google udostępnia wskazówki dojazdu.

Na przykład prośba o wskazówki dojazdu z „Toledo” do „Madrytu” zwraca odpowiednie wyniki, gdy parametr region jest ustawiony na es, a „Toledo” jest interpretowane jako hiszpańskie miasto:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Madrid
  &origin=Toledo
  &region=es
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toledo&destination=Madrid®ion=es&key=YOUR_API_KEY'

JSON

      
{
  "geocoded_waypoints":
    [
      {
        "geocoder_status": "OK",
        "place_id": "ChIJ8f21C60Lag0R_q11auhbf8Y",
        "types": ["locality", "political"],
      },
      {
        "geocoder_status": "OK",
        "place_id": "ChIJgTwKgJcpQg0RaSKMYcHeNsQ",
        "types": ["locality", "political"],
      },
    ],
  "routes":
    [
      {
        "bounds":
          {
            "northeast": { "lat": 40.4165207, "lng": -3.7026134 },
            "southwest": { "lat": 39.862808, "lng": -4.029406799999999 },
          },
        "copyrights": "Map data ©2022 Inst. Geogr. Nacional",
        "legs":
          [
            {
              "distance": { "text": "74.3 km", "value": 74327 },
              "duration": { "text": "57 mins", "value": 3446 },
              "end_address": "Madrid, Spain",
              "end_location": { "lat": 40.4165207, "lng": -3.705076 },
              "start_address": "Toledo, Spain",
              "start_location": { "lat": 39.862808, "lng": -4.0273727 },
              "steps":
                [
                  {
                    "distance": { "text": "0.6 km", "value": 615 },
                    "duration": { "text": "2 mins", "value": 106 },
                    "end_location":
                      { "lat": 39.8681019, "lng": -4.029378299999999 },
                    "html_instructions": "Head <b>northwest</b> on <b>Av. de la Reconquista</b> toward <b>C. de la Diputación</b>",
                    "polyline":
                      {
                        "points": "quhrF`rqWCBQJUJm@PQFg@Ni@JeBh@}@XaD|@{@Vk@Ns@RUFoA^u@R_AXwA`@WHMBG@C?E?GAC?IC",
                      },
                    "start_location": { "lat": 39.862808, "lng": -4.0273727 },
                    "travel_mode": "DRIVING",
                  },
                  // Additional steps omitted for brevity
                ],
              "traffic_speed_entry": [],
              "via_waypoint": [],
            },
          ],
        "overview_polyline":
          {
            "points": "quhrF`rqWcHzBaNzDeG~A][?k@lA{Dr@mBR]HmA[WQDWE[g@mAeE... (truncated for brevity)",
          },
        "summary": "A-42",
        "warnings": [],
        "waypoint_order": [],
      },
    ],
  "status": "OK",
}
      
    

XML

      
<DirectionsResponse>
 <status>OK</status>
 <route>
  <summary>A-42</summary>
  <leg>
   <step>
    <travel_mode>DRIVING</travel_mode>
    <start_location>
     <lat>39.8628080</lat>
     <lng>-4.0273727</lng>
    </start_location>
    <end_location>
     <lat>39.8681019</lat>
     <lng>-4.0293783</lng>
    </end_location>
    <polyline>
     <points>quhrF`rqWCBQJUJm@PQFg@Ni@JeBh@}@XaD|@{@Vk@Ns@RUFoA^u@R_AXwA`@WHMBG@C?E?GAC?IC</points>
    </polyline>
    <duration>
     <value>106</value>
     <text>2 mins</text>
    </duration>
    <html_instructions>Head &lt;b&gt;northwest&lt;/b&gt; on &lt;b&gt;Av. de la Reconquista&lt;/b&gt; toward &lt;b&gt;C. de la Diputación&lt;/b&gt;</html_instructions>
    <distance>
     <value>615</value>
     <text>0.6 km</text>
    </distance>
   </step>
   <!-- Additional steps omitted for brevity -->
   <duration>
    <value>3446</value>
    <text>57 mins</text>
   </duration>
   <distance>
    <value>74327</value>
    <text>74.3 km</text>
   </distance>
   <start_location>
    <lat>39.8628080</lat>
    <lng>-4.0273727</lng>
   </start_location>
   <end_location>
    <lat>40.4165207</lat>
    <lng>-3.7050760</lng>
   </end_location>
   <start_address>Toledo, Spain</start_address>
   <end_address>Madrid, Spain</end_address>
  </leg>
  <copyrights>Map data ©2022 Inst. Geogr. Nacional</copyrights>
  <overview_polyline>
   <points>quhrF`rqWcHzBaNzDeG~A][?k@lA{Dr@mBR]HmA[WQDWE[g@mAeE... (truncated for brevity)</points>
  </overview_polyline>
  <bounds>
   <southwest>
    <lat>39.8628080</lat>
    <lng>-4.0294068</lng>
   </southwest>
   <northeast>
    <lat>40.4165207</lat>
    <lng>-3.7026134</lng>
   </northeast>
  </bounds>
 </route>
 <geocoded_waypoint>
  <geocoder_status>OK</geocoder_status>
  <type>locality</type>
  <type>political</type>
  <place_id>ChIJ8f21C60Lag0R_q11auhbf8Y</place_id>
 </geocoded_waypoint>
 <geocoded_waypoint>
  <geocoder_status>OK</geocoder_status>
  <type>locality</type>
  <type>political</type>
  <place_id>ChIJgTwKgJcpQg0RaSKMYcHeNsQ</place_id>
 </geocoded_waypoint>
</DirectionsResponse>
      
      

Żądanie wskazówek dojazdu z „Toledo” do „Madrytu” wysłane bez parametru region nie zwraca wyników, ponieważ „Toledo” jest interpretowane jako miasto w Ohio, a nie w Hiszpanii:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=Madrid
  &origin=Toledo
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toledo&destination=Madrid&key=YOUR_API_KEY'

JSON

      
{
  "geocoded_waypoints":
    [
      {
        "geocoder_status": "OK",
        "place_id": "ChIJeU4e_C2HO4gRRcM6RZ_IPHw",
        "types": ["locality", "political"],
      },
      {
        "geocoder_status": "OK",
        "place_id": "ChIJgTwKgJcpQg0RaSKMYcHeNsQ",
        "types": ["locality", "political"],
      },
    ],
  "routes": [],
  "status": "ZERO_RESULTS",
}
      
      

XML

      
<DirectionsResponse>
 <status>ZERO_RESULTS</status>
 <geocoded_waypoint>
  <geocoder_status>OK</geocoder_status>
  <type>locality</type>
  <type>political</type>
  <place_id>ChIJeU4e_C2HO4gRRcM6RZ_IPHw</place_id>
 </geocoded_waypoint>
 <geocoded_waypoint>
  <geocoder_status>OK</geocoder_status>
  <type>locality</type>
  <type>political</type>
  <place_id>ChIJgTwKgJcpQg0RaSKMYcHeNsQ</place_id>
 </geocoded_waypoint>
</DirectionsResponse>
      
      

Modyfikatory lokalizacji

Możesz użyć modyfikatorów lokalizacji, aby wskazać, jak kierowcy powinni zbliżać się do określonej lokalizacji. W tym celu użyj parametru side_of_road, aby określić, po której stronie drogi mają jechać, lub podaj kierunek, aby wskazać prawidłowy kierunek jazdy. Te modyfikatory można dowolnie łączyć z modyfikatorem via: w przypadku pośrednich punktów na trasie.

Określanie, że trasy muszą przebiegać po określonej stronie drogi

Podczas określania punktu pośredniego 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 wskazówek dojazdu zwróci długą trasę, dzięki czemu pojazd zakończy jazdę po tej stronie drogi, po której znajduje się punkt pośredni:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=side_of_road%3A37.7663444%2C-122.4412006
  &origin=37.7680296%2C-122.4375126
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=37.7680296%2C-122.4375126&destination=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'

Jeśli używasz parametru side_of_road: z zakodowanymi liniami łamanymi, jest on stosowany do każdej lokalizacji na linii łamanej.

Modyfikatora side_of_road: można używać tylko z tymi ograniczeniami:

  • Parametr travel mode ma wartość driving lub nie jest określony (driving to domyślny środek transportu).

Określanie, że trasy powinny mieć określony kierunek

Podczas określania punktu pośredniego możesz poprosić o wyznaczenie trasy przez ten punkt w określonym kierunku. Ten 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, i tak dalej zgodnie z ruchem wskazówek zegara. Na przykład w tym żądaniu wskazówek dojazdu trasa prowadzi na wschód od miejsca wyjazdu, a następnie zawraca:

URL

https://maps.googleapis.com/maps/api/directions/json
  ?destination=37.773245%2C-122.469502
  &origin=heading%3D90%3A37.773279%2C-122.468780
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=heading%3D90%3A37.773279%2C-122.468780&destination=37.773245%2C-122.469502&key=YOUR_API_KEY'

Modyfikatora heading=X: można używać tylko z tymi ograniczeniami:

  • Parametr travel mode ma wartość driving, bicycling lub nie jest określony (driving to domyślny środek transportu).
  • Modyfikator side_of_road nie 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ć heading z adresami, identyfikatorami miejsc ani zakodowanymi łamanymi.