RouteGetRouteMatrix202Response interface
Interfejs API Get Route Matrix
to żądanie GET
HTTP, które oblicza czas podróży i odległość dla wszystkich możliwych par na liście źródeł i miejsc docelowych. W przeciwieństwie do interfejsu API Get Route Directions, który udostępnia szczegółowe instrukcje dotyczące trasy, ten interfejs API koncentruje się na wydajności, zapewniając koszt (czas podróży i odległość) routingu z każdego punktu początkowego do każdego miejsca docelowego. Aby uzyskać więcej informacji, zobacz Best practices for Azure Maps Route Service.
Dla każdego danego źródła usługa oblicza koszt routingu z tego źródła do każdego 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 z punktu początkowego 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 Route Directions.
Maksymalny rozmiar macierzy dla żądania asynchronicznego to 700, a żądanie synchronizacji to 100 (liczba źródeł pomnożonych przez liczbę miejsc docelowych).
Przesyłanie synchronicznego żądania macierzy tras
Jeśli scenariusz wymaga żądań synchronicznych, a maksymalny rozmiar macierzy jest mniejszy lub równy 100, możesz utworzyć żądanie synchroniczne. Maksymalny rozmiar macierzy dla tego interfejsu API to 100 (liczba źródeł pomnożona przez liczbę miejsc docelowych). Mając na uwadze to ograniczenie, przykłady możliwych wymiarów macierzy to: 10x10, 6x8, 9x8 (nie musi być kwadratowy).
GET https://atlas.microsoft.com/route/matrix/sync/json?api-version=1.0&subscription-key={subscription-key}
Prześlij żądanie asynchronicznej macierzy tras
Interfejs API asynchroniczny jest odpowiedni do przetwarzania dużych ilości stosunkowo złożonych żądań routingu. Gdy wysyłasz żądanie przy użyciu żądania asynchronicznego, domyślnie usługa zwraca kod odpowiedzi 202 wraz z adresem 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 parametr waitForResults
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 24 godzin. Adres URL przekierowania zwraca odpowiedź 404, jeśli jest używana po upływie okresu wygaśnięcia.
GET https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}
Oto typowa sekwencja operacji asynchronicznych:
Klient wysyła żądanie GET macierzy tras do usługi Azure Maps
Serwer odpowie jednym z następujących elementów:
202 Accepted
HTTP — żądanie macierzy tras zostało zaakceptowane.Error
HTTP — wystąpił błąd podczas przetwarzania żądania macierzy tras. Może to być 400 Nieprawidłowe żądanie lub inny kod stanu błędu.Jeśli żądanie trasy macierzy zostało zaakceptowane pomyślnie, nagłówek Location w odpowiedzi zawiera adres URL umożliwiający pobranie wyników żą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}
- Klient wystawia żądanie GET w adresie URL pobierania uzyskanym w kroku 3, aby pobrać wyniki
Pobieranie wyników synchronizacji
Po wysłaniu żądania GET 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żna pobrać wyników później.
Pobieranie wyników asynchronicznych
Gdy żądanie wysyła 202 Accepted
odpowiedzi, żą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 żądania GET
.
202 Accepted
HTTP — żądanie macierzy zostało zaakceptowane, ale nadal jest przetwarzane. Spróbuj ponownie za jakiś czas.
200 OK
HTTP — pomyślnie przetworzone żądanie macierzy. Treść odpowiedzi zawiera wszystkie wyniki.
- Rozszerzenie
Właściwości
headers | |
status |
Właściwości dziedziczone
body | Przeanalizowana treść |
request | Żądanie, które wygenerowało tę odpowiedź. |
Szczegóły właściwości
headers
headers: RawHttpHeaders & RouteGetRouteMatrix202Headers
Wartość właściwości
status
status: "202"
Wartość właściwości
"202"
Szczegóły właściwości dziedziczonej
body
Przeanalizowana treść
body: unknown
Wartość właściwości
unknown
dziedziczone z HttpResponse.body
request
Żądanie, które wygenerowało tę odpowiedź.
request: PipelineRequest
Wartość właściwości
dziedziczone z HttpResponse.request
Azure SDK for JavaScript