Dlaczego warto przejść na interfejs Routes API?

Interfejs Routes API poprawia wydajność przy obliczaniu wskazówek dojazdu, odległości i czasu podróży, dlatego warto zastąpić aplikacje, które obecnie korzystają z interfejsów Directions API oraz Reach Matrix API. Większość funkcji interfejsu Routes API jest zgodna wstecznie zarówno z Directions API, jak i DISTANCE Matrix API.

W tym przewodniku znajdziesz informacje o najważniejszych różnicach między interfejsem Routes API a usługami, które zastępuje, a także o tym, jak postępować w przypadku niezbędnych zmian. Więcej informacji o innych funkcjach interfejsu Routes API znajdziesz w omówieniu usługi.

Najważniejsze ulepszenia

W tej sekcji omawiamy niektóre ulepszenia, których możesz spodziewać się podczas korzystania z interfejsu Routes API w swoich aplikacjach.

Zwiększone limity żądań

Interfejs Routes API
  • Maksymalnie 625 elementów, chyba że określisz TRAFFIC_AWARE_OPTIMAL.
  • Maksymalnie 100 elementów w polu TRAFFIC_AWARE_OPTIMAL. Zobacz Ustawienia rozszerzonego routingu.
  • Maksymalnie 50 punktów pośrednich (początkujących i docelowych) korzystających z identyfikatora miejsca.
Interfejs DISTANCE Matrix API
  • Maksymalnie 25 punktów początkowych lub 25 miejsc docelowych na żądanie.
  • Maksymalnie 100 elementów (liczba źródeł × liczba miejsc docelowych) na żądanie po stronie serwera.

Szybsze odpowiedzi na żądania

Funkcja macierzy tras obliczeniowych zmniejsza opóźnienia:

  • Otrzymywać przesyłane elementy odpowiedzi przed obliczeniem całej macierzy.
  • Używaj masek pól, aby dostosować szczegóły odpowiedzi, wysyłając żądanie tylko tych danych, których potrzebujesz. Jest to sprawdzona metoda, która pomaga również obniżyć koszty.
  • Ulepszone obliczanie tras dla ruchu, które umożliwia kompromis między jakością danych a czasem reakcji.

Ulepszenia tras

Funkcja trasy obliczeniowej udostępnia te ulepszenia routingu:

  • Informacje o opłatach, a także odległość i szacowany czas dotarcia na miejsce.
  • Trasy pojazdów 2-kołowych.
  • Kwalifikuj punkty pośrednie dla bezpieczeństwa.
  • Zwiększony czas dotarcia na miejsce przez ustawienie kierunku jazdy i boku drogi dla punktów na trasie.

Żądaj tylko tych danych, których potrzebujesz

Teraz określasz, które pola mają być zwracane, co skraca czas przetwarzania i opłaty.

Interfejs Routes API Aby określić, które pola w odpowiedzi mają być zwracane, żądania muszą używać maski pola. Maskowanie pól zapobiega wysyłaniu żądań zbędnych danych, co pozwala uniknąć niepotrzebnego czasu przetwarzania i opłat.
Więcej informacji znajdziesz w artykule Wybieranie pól do zwrócenia.
Directions API
Odległość Matrix API
Zwraca domyślną listę pól, nawet jeśli aplikacja ich nie potrzebuje. Może to prowadzić do niepotrzebnego czasu przetwarzania i opłat.

Ulepszone obliczanie tras na potrzeby korków

Interfejs Routes API obsługuje 3 ustawienia routingu, które pozwalają znaleźć równowagę między czasem oczekiwania na odpowiedź a jakością danych podczas wysyłania żądań informacji o ruchu.

Więcej informacji znajdziesz w artykule Konfigurowanie jakości a opóźnienie.

TRAFFIC_UNAWARE
(domyślnie)
Do obliczania trasy używane są średnie dane o ruchu zależne od czasu, a nie bieżące dane o ruchu, co pozwala zminimalizować czas oczekiwania na odpowiedź. To ustawienie odpowiada sytuacji, gdy ruch nie jest używany w interfejsach Directions API i Reach Matrix API.
TRAFFIC_AWARE
(nowy)
Zoptymalizowana pod kątem wydajności jakość rzeczywistego ruchu w celu skrócenia opóźnień. W przeciwieństwie do ustawienia TRAFFIC_AWARE_OPTIMAL to ustawienie stosuje optymalizacje, aby znacznie skrócić czas oczekiwania. To ustawienie jest też nowe w przypadku interfejsu Routes API, które nie ma odpowiednika w interfejsie Directions API ani interfejsie Reach Matrix API.
TRAFFIC_AWARE_OPTIMAL Kompleksowe, wysokiej jakości dane o ruchu To ustawienie powoduje największe opóźnienie i jest odpowiednikiem ustawienia departure_time w interfejsach Directions API i Reach Matrix API.
To ustawienie odpowiada trybowi używanemu na stronie maps.google.com i w aplikacji mobilnej Mapy Google.

Porównanie obliczania trasy

W tej tabeli porównano opcje routingu dostępne w usługach Routes API oraz w usługach Directions API i interfejsu DISTANCE Matrix API.

Opcja natężenia ruchu Routes API Directions API
Odległość Matrix API
Opóźnienie
Brak ruchu w czasie rzeczywistym TRAFFIC_UNAWARE Nie ustawiono właściwości departure_time Najkrótszy czas oczekiwania ze wszystkich 3 trybów.
Zastosowano warunki na drodze TRAFFIC_AWARE Brak odpowiednika

Nowy tryb dodany przez interfejs Routes API. Zapewnia nieco większe opóźnienie niż TRAFFIC_UNAWARE przy niewielkim koszcie jakości rozszerzonych reklam tekstowych.

Funkcja ta ma znacznie mniejsze opóźnienie niż w przypadku TRAFFIC_AWARE_OPTIMAL.

Zastosowano kompleksowe, wysokiej jakości dane o ruchu TRAFFIC_AWARE_OPTIMAL Ustawiono departure_time usługę

Odpowiednik trybu używanego na maps.google.com i w aplikacji mobilnej Mapy Google.

W przypadku macierzy tras Compute liczba elementów w żądaniu (liczba źródeł × liczba miejsc docelowych) nie może przekraczać 100.

Najważniejsze różnice

W tej sekcji omawiamy najważniejsze różnice między interfejsem Routes API a usługami, którymi ten interfejs zastępuje, oraz sposoby rozwiązywania tych różnic w przypadku migracji z tych usług w istniejących aplikacjach.

Dzwoń do jednej usługi zamiast z dwóch

Interfejs Routes API Aby aplikacja mogła korzystać z tras Compute i macierzy tras Compute, włącz w swojej aplikacji tylko 1 usługę w konsoli API.
Więcej informacji znajdziesz w artykule Konfiguracja w konsoli interfejsów API Google.
Directions API
Odległość Matrix API
Włącz 2 usługi: Directions API i Address Matrix API jako osobne usługi w konsoli API.

Wykorzystuje HTTPS POST prośby

Interfejs Routes API Przekazuj parametry w treści żądania lub w nagłówkach w ramach żądania HTTP POST.
Przykłady:
- Obliczanie trasy
- Obliczanie macierzy tras
Directions API
Odległość Matrix API
Przekazywanie parametrów adresu URL za pomocą żądania HTTP GET.

Różnice w odpowiedziach na szacowany czas dotarcia na miejsce

Interfejs Routes API zwraca szacowany czas dotarcia i wykorzystuje właściwość odpowiedzi duration inaczej niż usługi Directions API i interfejsu będzieszo Więcej czasu, jak pokazano w tabeli poniżej.

Typ szacowanego czasu dotarcia na miejsce Routes API Directions API
Odległość Matrix API
Szacowany czas dotarcia na miejsce – nieświadomy natężenia ruchu.

Ustaw za pomocą: TRAFFIC_UNAWARE.

  • Szacowany czas dotarcia podany we właściwości odpowiedzi duration.
  • Właściwości odpowiedzi duration i staticDuration zawierają tę samą wartość.

Odpowiada to opcji departure_time, która nie jest ustawiona w żądaniu.

  • Szacowany czas dotarcia podany we właściwości odpowiedzi duration.
  • Właściwość odpowiedzi duration_in_traffic nie jest zwracana.
szacowany czas dotarcia z uwzględnieniem ruchu w czasie rzeczywistym.

Ustaw za pomocą TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL.

  • Szacowany czas dotarcia na miejsce, który uwzględnia ruch w czasie rzeczywistym, jest zawarty we właściwości odpowiedzi duration.
  • Właściwość odpowiedzi staticDuration zawiera czas podróży na trasie bez uwzględniania natężenia ruchu.
  • Właściwość duration_in_traffic nie jest już zwracana.

Ustaw w żądaniu za pomocą parametru departure_time.

  • Szacowany czas dotarcia na miejsce, który uwzględnia ruch w czasie rzeczywistym, jest zawarty we właściwości odpowiedzi duration_in_traffic.

Punkty pośrednie w linii łamanej

Za pomocą tej usługi nie musisz już konwertować współrzędnych szerokości i długości geograficznej na punkty pośrednie obsługujące linię łamaną, która obsługuje treść żądania POST i nie ma już wpływu na ograniczenia związane z ciągami znaków w adresach URL. Niektórzy użytkownicy interfejsu DISTANCE Matrix API rozwiązali problem z limitami żądań, konwertując punkty szerokości i długości geograficznej na punkty pośrednie oparte na linii łamanej.

Sformatowane adresy (odwrotny geokod)

Interfejs Routes API nie podał w odpowiedzi sformatowanych adresów. Aby uzyskać sformatowane adresy, użyj interfejsu Geocoding API, który został stworzony z myślą o tym przypadku i zapewnia wyniki wyższej jakości.

Dostępne środki transportu

Tak jak w przypadku interfejsu Directions API, gdy żądanie trasy nie określa trybu podróży, domyślnym trybem jest DYSK. Jeśli jednak żądanie określa tryb podróży, interfejs Routes API nie zwraca tablicy dostępnych trybów podróży jako alternatywnych opcji w żądaniu. Jeśli Twój przypadek użycia zależy od tej funkcji, zgłoś problem, w którym opiszesz, jak z niej korzystasz, abyśmy mogli się z nią skontaktować.

Format XML jako odpowiedź

Interfejs Routes API nie udostępnia formatu XML jako formatu odpowiedzi. W internecie znajdziesz wiele konwerterów z formatu JSON na XML, które sprawdzą się w Twoim przypadku.