- Żądanie HTTP
- Treść żądania
- Treść odpowiedzi
- RouteMatrixOrigin
- RouteMatrixDestination
- Dodatkowe obliczenia
- RouteMatrixElementCondition
Pobiera listę źródeł i miejsc docelowych, a następnie zwraca strumień zawierający informacje o trasie dla każdej kombinacji źródła i miejsca docelowego.
UWAGA: ta metoda wymaga określenia maski pola odpowiedzi w danych wejściowych. Maskę pola odpowiedzi możesz przekazać, używając parametru adresu URL $fields
lub fields
albo nagłówka HTTP/gRPC X-Goog-FieldMask
(zobacz dostępne parametry i nagłówki adresów URL). Wartość jest listą rozdzielonych przecinkami ścieżek pól. Dowiedz się więcej o tworzeniu ścieżek pól.
W ten sposób:
- Maska wszystkich dostępnych pól (do ręcznego sprawdzenia):
X-Goog-FieldMask: *
- Maska pola czasu trwania, dystansu, stanu, stanu i indeksów elementów (przykładowa konfiguracja produkcyjna):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
Bardzo ważne jest uwzględnienie status
w masce pola, ponieważ w przeciwnym razie wszystkie wiadomości będą wyglądały poprawnie. Odradzamy używanie maski z odpowiedzią z symbolem wieloznacznym (*
), ponieważ:
- Wybór tylko tych pól, których potrzebujesz, pozwala naszemu serwerowi zapisywać cykle obliczeniowe. Dzięki temu zwracamy wyniki z mniejszym opóźnieniem.
- Wybór tylko tych pól, których potrzebujesz w zadaniu produkcyjnym, zapewnia stabilną wydajność. W przyszłości możemy dodać więcej pól odpowiedzi, które mogą wymagać dodatkowego czasu na obliczenia. Jeśli wybierzesz wszystkie pola lub jeśli wybierzesz wszystkie pola na najwyższym poziomie, wyniki mogą się pogorszyć, ponieważ nowe pola, które dodamy, będą automatycznie uwzględniane w odpowiedzi.
- Wybranie tylko pól, których potrzebujesz, powoduje zmniejszenie rozmiaru odpowiedzi, a tym samym zwiększenie przepustowości sieci.
Żądanie HTTP
POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
Adres URL używa składni transkodowania gRPC.
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "origins": [ { object ( |
Pola | |
---|---|
origins[] |
Wymagany. Tablica źródeł, która określa wiersze macierzy odpowiedzi. Na stronach zbioru i miejsc docelowych obowiązuje kilka ograniczeń dotyczących rozmiaru:
|
destinations[] |
Wymagany. Tablica miejsc docelowych, która określa kolumny macierzy odpowiedzi. |
travelMode |
Opcjonalnie. Określa środek transportu. |
routingPreference |
Opcjonalnie. Określa sposób obliczania trasy. Serwer próbuje użyć wybranej trasy do obliczenia trasy. Jeśli ustawienie routingu spowoduje błąd lub bardzo długie opóźnienie, zostanie zwrócony błąd. Możesz wybrać tę opcję tylko wtedy, gdy |
departureTime |
Opcjonalnie. Godzina wyjazdu. Jeśli nie ustawisz tej wartości, domyślna wartość to czas przesłania żądania. Jeśli ustawisz tę wartość na czas, który upłynął, żądanie się nie powiedzie. Sygnatura czasowa w formacie „Zulu” UTC3339, z rozdzielczością nanosekundą i maksymalnie 9 cyframi. Przykłady: |
languageCode |
Opcjonalnie. Kod języka BCP-47, np. „pl-PL” lub „sr-Latn”. Więcej informacji znajdziesz na stronie http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Listę obsługiwanych języków znajdziesz w sekcji Obsługa języków. Jeśli nie podasz tej wartości, język wyświetlania zostanie ustalony na podstawie lokalizacji pierwszego źródła. |
regionCode |
Opcjonalnie. Kod regionu podany jako wartość „ccTLD” („domena najwyższego poziomu”) zawierająca 2 znaki. Więcej informacji znajdziesz na stronie https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains#Country_code_top-level_domains |
extraComputations[] |
Opcjonalnie. Lista dodatkowych obliczeń, których można użyć do zrealizowania żądania. Uwaga: te dodatkowe obliczenia mogą spowodować zwrócenie dodatkowych pól w odpowiedzi. Te dodatkowe pola muszą być również określone w masce pola, które mają zostać zwrócone w odpowiedzi. |
Treść odpowiedzi
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Kasuje informacje o trasie obliczone na potrzeby pary punktu początkowego i miejsca docelowego w interfejsie v2.computeRouteMatrix API. Ten protokół można przesyłać strumieniowo do klienta.
Zapis JSON |
---|
{ "status": { object ( |
Pola | |
---|---|
status |
Kod stanu błędu tego elementu. |
condition |
Wskazuje, czy trasa została znaleziona. Niezależnie od stanu. |
distanceMeters |
Odległość od trasy w metrach. |
duration |
Czas potrzebny na poruszanie się po trasie. Jeśli ustawisz Czas trwania w sekundach z maksymalnie 9 cyframi poprzedzonymi cyframi |
staticDuration |
Czas podróży po trasie bez uwzględniania warunków na drodze. Czas trwania w sekundach z maksymalnie 9 cyframi poprzedzonymi cyframi |
travelAdvisory |
Dodatkowe informacje o trasie. Na przykład: informacje o ograniczeniach i o płatnych przejazdach |
fallbackInfo |
W niektórych przypadkach, gdy serwer nie może obliczyć trasy o określonych preferencjach dla tej konkretnej pary źródło/miejsce docelowe, może skorzystać z innego trybu obliczeniowego. Gdy używasz tego trybu, to pole zawiera szczegółowe informacje o odpowiedzi odpowiedzi zastępczej. W przeciwnym razie to pole nie jest skonfigurowane. |
originIndex |
Indeks wskazujący zero w źródle żądania. |
destinationIndex |
Indeks zerowy miejsca docelowego w żądaniu. |
RouteMatrixOrigin
Jedno źródło dla ComputeRouteMatrixRequest
Zapis JSON |
---|
{ "waypoint": { object ( |
Pola | |
---|---|
waypoint |
Wymagany. Punkt początkowy punktu |
routeModifiers |
Opcjonalnie. Modyfikatory dla każdej trasy, która posłuży za punkt początkowy |
Miejsce docelowe RouteMatrix
Jedno miejsce docelowe dla ComputeRouteMatrixRequest
Zapis JSON |
---|
{
"waypoint": {
object ( |
Pola | |
---|---|
waypoint |
Wymagany. Docelowy punkt na trasie |
Dodatkowe obliczenia
Dodatkowe obliczenia do wykonania żądania.
Wartości w polu enum | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
Nieużywany. Żądania, które zawierają tę wartość, nie zostaną zrealizowane. |
TOLLS |
Informacje o płatnych elementach macierzy. |
TrasaMatrixElement
Stan zwracanej trasy.
Wartości w polu enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
Używany tylko wtedy, gdy element status elementu jest nieprawidłowy. |
ROUTE_EXISTS |
Znaleziono trasę, a odpowiednie informacje o elemencie zostały uzupełnione. |
ROUTE_NOT_FOUND |
Nie znaleziono żadnej trasy. Pola zawierające informacje o trasach, takie jak distanceMeters lub duration , nie zostaną wypełnione w tym elemencie. |