Udostępnij za pośrednictwem


RouteRequestRouteMatrixSync200Response interface

Dotyczy: zobacz warstwy cenowe.

Usługa routingu macierzy umożliwia obliczenie macierzy podsumowań tras dla zestawu tras zdefiniowanych przez lokalizacje początkowe i docelowe przy użyciu asynchronicznego (asynchronicznego) lub synchronicznego (synchronizacji) żądania POST. Dla każdego danego źródła usługa oblicza koszt routingu od tego źródła do każdego danego miejsca docelowego. Zestaw źródeł i zestaw miejsc docelowych można traktować jako nagłówki kolumn i wierszy tabeli, a każda komórka w tabeli zawiera koszty routingu od źródła do miejsca docelowego dla tej komórki. Załóżmy na przykład, że firma dostarczająca żywność ma 20 kierowców i musi znaleźć najbliższego kierowcę, aby odebrać dostawę z restauracji. Aby rozwiązać ten przypadek użycia, mogą wywołać interfejs API trasy macierzy.

Dla każdej trasy zwracane są czasy podróży i odległości. Za pomocą obliczonych kosztów można określić, które szczegółowe trasy mają być obliczane przy użyciu interfejsu API Kierunek trasy.

Maksymalny rozmiar macierzy dla żądania asynchronicznego wynosi 700 , a żądanie synchronizacji wynosi 100 (liczba źródeł pomnożona przez liczbę miejsc docelowych).

Prześlij żądanie macierzy tras synchronicznych

Jeśli scenariusz wymaga żądań synchronicznych, a maksymalny rozmiar macierzy jest mniejszy lub równy 100, może być konieczne wykonanie synchronicznego żądania. Maksymalny rozmiar macierzy dla tego interfejsu API to 100 (liczba źródeł pomnożona przez liczbę miejsc docelowych). Mając to na uwadze, przykłady możliwych wymiarów macierzy to: 10x10, 6x8, 9x8 (nie musi być kwadratowy).

POST https://atlas.microsoft.com/route/matrix/sync/json?api-version=1.0&subscription-key={subscription-key}

Przesyłanie żądania macierzy tras asynchronicznych

Interfejs API asynchroniczny jest odpowiedni do przetwarzania dużych woluminów stosunkowo złożonych żądań routingu. Gdy wysyłasz żądanie przy użyciu żądania asynchronicznego, domyślnie usługa zwraca kod odpowiedzi 202 wzdłuż adresu URL przekierowania w polu Lokalizacja nagłówka odpowiedzi. Ten adres URL powinien być okresowo sprawdzany do momentu udostępnienia danych odpowiedzi lub informacji o błędzie. Jeśli waitForResults parametr w żądaniu ma wartość true, użytkownik otrzyma odpowiedź 200, jeśli żądanie zostanie zakończone poniżej 120 sekund.

Maksymalny rozmiar macierzy dla tego interfejsu API to 700 (liczba źródeł pomnożona przez liczbę miejsc docelowych). Mając to na uwadze, przykłady możliwych wymiarów macierzy to: 50x10, 10x10, 28x25. 10x70 (nie musi być kwadratowy).

Odpowiedzi asynchroniczne są przechowywane przez 14 dni. Adres URL przekierowania zwraca odpowiedź 404, jeśli zostanie użyta po upływie okresu wygaśnięcia.

POST https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}

Oto typowa sekwencja operacji asynchronicznych:

  1. Klient wysyła żądanie POST macierzy tras do Azure Maps

  2. Serwer odpowie na jedną z następujących czynności:

    HTTP 202 Accepted — żądanie macierzy tras zostało zaakceptowane.

    HTTP Error — wystąpił błąd podczas przetwarzania żądania macierzy tras. Może to być 400 Nieprawidłowe żądanie lub inny kod stanu błędu.

  3. Jeśli żądanie trasy macierzy zostało zaakceptowane pomyślnie, nagłówek Lokalizacja w odpowiedzi zawiera adres URL, aby pobrać wyniki żądania. Ten identyfikator URI stanu wygląda następująco:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
  1. Klient wystawia żądanie GET na adres URL pobierania uzyskany w kroku 3, aby pobrać wyniki

Pobieranie wyników synchronizacji

Po wysłaniu żądania POST dla interfejsu API synchronizacji macierzy tras usługa zwraca kod odpowiedzi 200 dla pomyślnego żądania i tablicy odpowiedzi. Treść odpowiedzi będzie zawierać dane i nie będzie możliwości późniejszego pobrania wyników.

Pobieranie wyników asynchronicznych

Gdy żądanie wystawia 202 Accepted odpowiedź, żądanie jest przetwarzane przy użyciu naszego potoku asynchronicznego. Otrzymasz adres URL, aby sprawdzić postęp żądania asynchronicznego w nagłówku lokalizacji odpowiedzi. Ten identyfikator URI stanu wygląda następująco:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}

Adres URL podany przez nagłówek lokalizacji zwróci następujące odpowiedzi po wysłaniu GET żądania.

HTTP 202 Accepted — żądanie macierzy zostało zaakceptowane, ale nadal jest przetwarzane. Spróbuj ponownie w pewnym czasie.

HTTP 200 OK — pomyślnie przetworzone żądanie macierzy. Treść odpowiedzi zawiera wszystkie wyniki.

Extends

Właściwości

body
status

Właściwości dziedziczone

headers

Nagłówki odpowiedzi HTTP.

request

Żądanie, które wygenerowało tę odpowiedź.

Szczegóły właściwości

body

body: RouteMatrixResultOutput

Wartość właściwości

status

status: "200"

Wartość właściwości

"200"

Szczegóły właściwości dziedziczonej

headers

Nagłówki odpowiedzi HTTP.

headers: RawHttpHeaders

Wartość właściwości

Dziedziczone z HttpResponse.headers

request

Żądanie, które wygenerowało tę odpowiedź.

request: PipelineRequest

Wartość właściwości

Dziedziczone z HttpResponse.request