Na podstawie zestawu punktów docelowych i punktów pośrednich oraz celu trasy oblicza najlepszą trasę dla tego celu. Zwraca również najszybszą i najkrótszą trasę jako trasy referencyjne.
UWAGA: ta metoda wymaga określenia maski pola odpowiedzi w danych wejściowych. Możesz podać maskę pola odpowiedzi, używając parametru adresu URL $fields
lub fields
albo nagłówka HTTP/gRPC X-Goog-FieldMask
(patrz dostępne parametry i nagłówki adresu URL). Wartość to lista ścieżek pól rozdzielonych przecinkami. Zapoznaj się z szczegółową dokumentacją dotyczącą tworzenia ścieżek pól.
Na przykład w tej metodzie:
- Maska pola wszystkich dostępnych pól (do sprawdzenia ręcznego):
X-Goog-FieldMask: *
- Maska pola odległości, czasu trwania, tokena i informacji o opłatach za przejazd:
X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo
Odradzamy stosowanie maski pola odpowiedzi z symbolem wieloznacznym (*
) oraz określanie maski pola na najwyższym poziomie (routes
), ponieważ:
- Wybranie tylko tych pól, których potrzebujesz, pomaga naszemu serwerowi oszczędzać cykle obliczeniowe, dzięki czemu możemy zwrócić Ci wyniki z krótszym czasem oczekiwania.
- Wybranie tylko tych pól, których potrzebujesz w produkcyjnym zadaniu, zapewnia stabilną wartość opóźnienia. W przyszłości możemy dodać więcej pól odpowiedzi, a te nowe pola mogą wymagać dłuższego czasu na obliczenia. Jeśli wybierzesz wszystkie pola lub wszystkie pola na najwyższym poziomie, wydajność może się zmniejszyć, ponieważ nowe pola, które dodamy, będą automatycznie uwzględniane w odpowiedzi.
- Wybranie tylko potrzebnych pól powoduje mniejszy rozmiar odpowiedzi, a co za tym idzie, większą przepustowość sieci.
Żądanie HTTP
POST https://routespreferred.googleapis.com/v1alpha:computeCustomRoutes
Adres URL używa składni transkodowania gRPC.
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "origin": { object ( |
Pola | |
---|---|
origin |
Wymagane. Punkt pośredni na trasie. |
destination |
Wymagane. Punkt docelowy. |
intermediates[] |
Opcjonalnie: zestaw punktów pośrednich na trasie (z wyłączeniem punktów końcowych) do zatrzymania się lub przejazdu obok; Obsługiwane jest maksymalnie 25 pośrednich punktów pośrednich. |
travel |
Opcjonalnie: Określa środek transportu. Obsługiwane są tylko wartości |
routing |
Opcjonalnie: Określa sposób obliczania trasy. Serwer próbuje użyć wybranego ustawienia routingu do obliczenia trasy. Jeśli ustawienie routingu powoduje błąd lub bardzo długie opóźnienie, zwracany jest błąd. Tę opcję możesz określić tylko wtedy, gdy |
polyline |
Opcjonalnie: Określa preferencję dotyczącą jakości linii łamanej. |
polyline |
Opcjonalnie: Określa preferowane kodowanie linii łamanej. |
departure |
Opcjonalnie: Godzina wyjazdu. Jeśli nie ustawisz tej wartości, domyślnie będzie przyjęta data przesłania żądania. Jeśli ustawisz tę wartość na czas, który już minął, żądanie zakończy się niepowodzeniem. Sygnatura czasowa w formacie RFC3339 UTC „Zulu” z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
route |
Opcjonalnie: Zestaw warunków, które należy spełnić, a które wpływają na sposób obliczania tras. |
route |
Wymagane. Trasa, pod kątem której chcesz prowadzić optymalizację. |
language |
Opcjonalnie: Kod języka BCP-47, np. „pl-PL” lub „sr-Latn”. Więcej informacji znajdziesz w artykule Identyfikator języka w standardzie Unicode. Listę obsługiwanych języków znajdziesz w sekcji Obsługiwane języki. Jeśli nie podasz tej wartości, język wyświetlania będzie ustalany na podstawie lokalizacji żądania trasy. |
units |
Opcjonalnie: Określa jednostki miary dla pól wyświetlanych. Obejmuje to pole |
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu ComputeCustomRoutesResponse
.
Zakresy autoryzacji
Wymaga następującego zakresu OAuth:
https://www.googleapis.com/auth/maps-platform.routespreferred
Więcej informacji znajdziesz w artykule Omówienie OAuth 2.0.