- Żądanie HTTP
- Treść żądania
- Treść odpowiedzi
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
Odbiera listę miejsc nadania i miejsc docelowych, a następnie zwraca strumień zawierający informacje o trasach dla każdej kombinacji miejsca nadania i miejsca docelowego.
UWAGA: ta metoda wymaga podania w danych wejściowych maski pola odpowiedzi. Możesz podać maskę pola odpowiedzi, używając parametru URL $fields
lub fields
albo nagłówka HTTP/gRPC X-Goog-FieldMask
(patrz dostępne parametry i nagłówki 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 pól wszystkich dostępnych pól (do ręcznej kontroli):
X-Goog-FieldMask: *
- Maska pola z czasami trwania trasy, odległościami, stanem i warunkami elementu oraz indeksami elementów (przykładowa konfiguracja produkcyjna):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
Ważne jest, aby w masce pola uwzględnić status
, ponieważ w przeciwnym razie wszystkie wiadomości będą wyświetlane jako OK. Google nie zaleca używania maski pola odpowiedzi z symbolem wieloznacznym (*
), ponieważ:
- Wybranie tylko tych pól, których potrzebujesz, pomaga naszemu serwerowi oszczędzać cykle obliczeniowe, dzięki czemu możemy zwrócić Ci wynik z mniejszym opóźnieniem.
- Wybranie tylko tych pól, których potrzebujesz w produkcyjnym zbiorze zadań, zapewnia stabilną wartość opóźnienia. W przyszłości możemy dodać więcej pól odpowiedzi, a to może wydłużyć czas obliczeń. Jeśli wybierzesz wszystkie pola lub wszystkie pola na najwyższym poziomie, może to spowodować pogorszenie wydajności, ponieważ każde nowe pole, które dodamy, będzie 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://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[] |
Wymagane. Tablica źródeł, która określa wiersze macierzy odpowiedzi. Moc zbioru źródeł i miejsc docelowych podlega kilku ograniczeniom rozmiaru:
|
destinations[] |
Wymagane. Tablica miejsc docelowych, która określa kolumny macierzy odpowiedzi. |
travel |
Opcjonalnie: Określa środek transportu. |
routing |
Opcjonalnie: Określa sposób obliczania trasy. Serwer próbuje użyć wybranych preferencji routingu do obliczenia trasy. Jeśli preferencja routingu powoduje błąd lub wydłuża czas oczekiwania, zwracany jest błąd. Możesz określić tę opcję tylko wtedy, gdy |
departure |
Opcjonalnie: Godzina wyjazdu. Jeśli nie ustawisz tej wartości, zostanie ona domyślnie ustawiona na czas wysłania żądania. UWAGA: wartość Sygnatura czasowa w formacie UTC „Zulu” zdefiniowanym w dokumencie RFC 3339, z dokładnością do nanosekund i maksymalnie 9 miejsc po przecinku. Przykłady: |
arrival |
Opcjonalnie: Godzina przyjazdu. UWAGA: można ustawić tylko wtedy, gdy ustawienie Sygnatura czasowa w formacie UTC „Zulu” zdefiniowanym w dokumencie RFC 3339, z dokładnością do nanosekund i maksymalnie 9 miejsc po przecinku. Przykłady: |
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 zostanie wywnioskowany na podstawie lokalizacji pierwszego źródła. |
region |
Opcjonalnie: Kod regionu podany jako 2-znakowa wartość ccTLD („domena najwyższego poziomu”). Więcej informacji znajdziesz w artykule Domena krajowa najwyższego poziomu. |
units |
Opcjonalnie: Określa jednostki miary dla pól wyświetlania. |
extra |
Opcjonalnie: Lista dodatkowych obliczeń, które mogą być użyte do wykonania żądania. Uwaga: te dodatkowe obliczenia mogą zwrócić dodatkowe pola w odpowiedzi. Te dodatkowe pola muszą być również określone w masce pola, aby mogły zostać zwrócone w odpowiedzi. |
traffic |
Opcjonalnie: Określa założenia stosowane podczas obliczania czasu w ruchu. To ustawienie wpływa na wartość zwracaną w polu duration w elementach |
transit |
Opcjonalnie: Określa preferencje, które wpływają na trasę zwróconą dla tras |
Treść odpowiedzi
Zawiera informacje o trasie obliczonej dla pary źródlo/miejsce docelowe w interfejsie v2.computeRouteMatrix API. Protokół ten może być przesyłany strumieniowo do klienta.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "status": { object ( |
Pola | |
---|---|
status |
Kod stanu błędu tego elementu. |
condition |
Wskazuje, czy trasa została znaleziona. Niezależnie od stanu. |
distance |
Odległość do przebycia na trasie w metrach. |
duration |
Czas potrzebny na przejechanie trasy. Jeśli ustawisz wartość Czas w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „ |
static |
Czas przejazdu trasy bez uwzględnienia warunków na drodze. Czas w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „ |
travel |
dodatkowe informacje o trasie. Na przykład: informacje o ograniczeniach i informacje o opłatach |
fallback |
W niektórych przypadkach, gdy serwer nie może obliczyć trasy z uwzględnieniem podanych preferencji w przypadku danego połączenia między punktem początkowym a docelowym, może użyć innego trybu obliczeń. Gdy używany jest tryb zapasowy, to pole zawiera szczegółowe informacje o odpowiednich odpowiedziach. W przeciwnym razie to pole nie jest skonfigurowane. |
localized |
Tekstowe reprezentacje właściwości |
origin |
Źródło w żądaniu o indeksie liczonym od 0. |
destination |
Indeks miejsca docelowego w żądaniu liczony od zera. |
RouteMatrixOrigin
Pojedyncze źródło dla ComputeRouteMatrixRequest
Zapis JSON |
---|
{ "waypoint": { object ( |
Pola | |
---|---|
waypoint |
Wymagane. Punkt początkowy |
route |
Opcjonalnie: Modyfikatory dla każdej trasy, która ma ten punkt jako punkt początkowy |
RouteMatrixDestination
Pojedyncze miejsce docelowe dla ComputeRouteMatrixRequest
Zapis JSON |
---|
{
"waypoint": {
object ( |
Pola | |
---|---|
waypoint |
Wymagane. Punkt docelowy |
ExtraComputation
dodatkowe obliczenia do wykonania podczas realizacji prośby;
Wartości w polu enum | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
Nieużywane. Żądania zawierające tę wartość nie zostaną zrealizowane. |
TOLLS |
Informacje o opłatach za elementy macierzy. |
RouteMatrixElementCondition
Stan zwracanej trasy.
Wartości w polu enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
Używany tylko wtedy, gdy status elementu nie jest OK. |
ROUTE_EXISTS |
Trasa została znaleziona, a odpowiednie informacje zostały wypełnione w przypadku tego elementu. |
ROUTE_NOT_FOUND |
Nie znaleziono trasy. Pola zawierające informacje o trasie, takie jak distanceMeters lub duration , nie będą wypełniane w elemencie. |
LocalizedValues
tekstowe reprezentacje niektórych właściwości;
Zapis JSON |
---|
{ "distance": { object ( |
Pola | |
---|---|
distance |
Odległość do pokonania w formie tekstowej. |
duration |
Czas trwania w formie tekstowej uwzględniający warunki ruchu. Uwaga: jeśli nie przesłano żądania informacji o ruchu, ta wartość jest taka sama jak wartość staticDuration. |
static |
Czas trwania w formie tekstu bez uwzględniania warunków ruchu. |
transit |
Opłata za przejazd w formie tekstowej. |