Ten przewodnik opisuje, jak przenieść aplikacje, które używają interfejsu Directions API lub Distance Matrix API, na interfejs Routes API. Szczegółowe informacje o interfejsie Routes API znajdziesz w omówieniu produktu.
Sprawdzone metody dotyczące płatności podczas migracji
Te wskazówki mają zastosowanie, jeśli wykorzystanie interfejsu API jest na tyle wysokie, że kwalifikuje się do cen na poziomie 2. Podczas przechodzenia na nowszą wersję interfejsu API obciążamy Cię też opłatą za inny numer SKU. Aby uniknąć wzrostu kosztów w miesiącu przejścia na nowe interfejsy API, zalecamy wdrożenie ich w środowisku produkcyjnym jak najbliżej początku miesiąca. Dzięki temu w miesiącu migracji osiągniesz najbardziej opłacalne miesięczne progi cenowe. Informacje o poziomach cenowych znajdziesz na stronie z cennikiem i w odpowiedziach na najczęstsze pytania dotyczące cen.
Aktualizowanie punktów końcowych interfejsu API REST
Zaktualizuj kod, aby używać nowych punktów końcowych Routes API.
Directions API
| Directions API | https://maps.googleapis.com/maps/api/directions/outputFormat?parameters |
| Routes API | https://routes.googleapis.com/directions/v2:computeRoutes |
Distance Matrix API
| Distance Matrix API | https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters |
| Routes API | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
Konwertowanie parametrów adresu URL na treść żądania HTTPS
W przypadku interfejsów Directions API i Distance Matrix API właściwości konfiguracji są przekazywane jako parametry adresu URL w żądaniu HTTP GET. Na przykład w przypadku interfejsu Directions API:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
W interfejsie Routes API parametry są przekazywane w treści żądania lub w nagłówkach
w ramach żądania HTTP POST. Przykłady:
Konwertowanie punktów pośrednich zakodowanych w postaci linii łamanej na punkty pośrednie lokalizacji
Określanie punktów pośrednich jako zakodowanych linii łamanych jest dostępne w interfejsie Directions API (starsza wersja), aby zmieścić dużą liczbę punktów pośrednich w limicie znaków adresu URL wynoszącym 16384. Ta funkcja nie jest konieczna w Routes API, ponieważ punkty pośrednie mogą być przesyłane w treści żądania REST lub gRPC jako współrzędne szerokości i długości geograficznej. Przykłady znajdziesz w sekcji Przykład HTTP w dokumencie Obliczanie macierzy tras lub w sekcji Definiowanie punktu pośredniego w dokumencie Określanie punktów pośrednich.
Konwertowanie parametrów
W tabelach poniżej znajdziesz parametry interfejsów Directions API i Distance Matrix API, które zostały zmienione lub zmodyfikowane, oraz parametry, które nie są obsługiwane w wersji GA. Jeśli używasz któregoś z tych parametrów, zaktualizuj kod.
Konwersje z parametrem żądania
| Parametr trasy lub macierzy odległości | Parametr Routes API | Uwagi |
|---|---|---|
alternatives |
computeAlternativeRoutes |
|
arrival_time |
arrivalTime |
Dostępny tylko w trybie TRANSIT, a nie w tym samym czasie co departureTime. |
avoid |
routeModifiers |
|
departure_time |
departureTime |
Nie można używać jednocześnie z opcją arrivalTime. |
language |
languageCode |
Obsługiwane tylko w przypadku tras obliczeniowych. |
mode |
travelMode |
Dodaliśmy obsługę właściwości |
region |
regionCode |
|
traffic_model |
trafficModel |
Więcej informacji |
transit_mode |
"travelMode": "TRANSIT" |
W Directions API (starsza wersja) w przypadku trasy transportu publicznego każdy odcinek podróży z tym samym środkiem transportu (np. pieszo lub transportem publicznym) jest traktowany jako jeden krok, a poszczególne wskazówki dojazdu dla tego środka transportu są podane w podkrokach. W interfejsie Routes API kroki są natomiast zawsze jedną instrukcją nawigacji we wszystkich typach podróży. Każda instrukcja nawigacji to krok. W przypadku wielu etapów w jednym trybie podróży interfejs Routes API udostępnia metadane zawierające podsumowanie etapów dla tego trybu podróży w polu `stepsOverview`. Aby poprosić o te metadane, użyj maski pola `routes.legs.stepsOverview`. Więcej informacji |
transit_routing_preference |
transitRoutingPreference |
Więcej informacji |
units |
units |
Więcej informacji |
waypoints |
intermediates |
Usunięto obsługę zakodowanych polilinii. |
optimize=true w przypadku punktów pośrednich, |
"optimizeWaypointOrder": "true" |
Więcej informacji |
Konwersje parametrów odpowiedzi
| Parametr trasy lub macierzy odległości | Parametr Routes API | Uwagi |
|---|---|---|
copyrights |
Nie uwzględniono w odpowiedzi. Podczas wyświetlania wyników użytkownikom musisz dołączyć to oświadczenie:
Na przykład:
|
|
distance |
distanceMeters |
Odległość jest dostępna tylko w metrach. |
duration_in_traffic |
duration |
Usunięto z interfejsu Routes API. Użyj duration. |
status |
Niedostępne. Używaj kodów odpowiedzi HTTP w przypadku błędów zgłaszanych przez interfejs API. Więcej informacji znajdziesz w sekcji Obsługa błędów żądań. | |
geocoded_waypoints |
geocoding_results |
Obsługiwane tylko w przypadku tras obliczeniowych. Zawiera informacje o odpowiedzi geokodowania tylko w przypadku punktów pośrednich określonych jako adresy. |
bounds |
viewport |
|
legs.end_address |
Niedostępne. | Aby uzyskać wysoce precyzyjne wyznaczanie trasy, używaj identyfikatorów miejsc zamiast współrzędnych. Identyfikatory miejsc zawierają dane, które przyciągają trasę do prawidłowych punktów dostępu.
|
legs.start_address |
Niedostępne. | |
overview_polyline |
linia łamana | |
summary |
description |
|
waypoint_order |
optimizedIntermediateWaypointIndex |