Condividi tramite


RouteRequestRouteMatrix202Response interface

L'API Post Route Matrix è una richiesta http POST che consente il calcolo di una matrice di riepiloghi di route per un set di route definite dalle posizioni di origine e di destinazione usando una richiesta asincrona (asincrona). Per effettuare una richiesta sincrona (sincrona), vedere Post Route Matrix Sync. Per ogni origine specificata, il servizio calcola il costo del routing da tale origine a ogni destinazione specificata. Il set di origini e il set di destinazioni possono essere considerati come le intestazioni di colonna e riga di una tabella e ogni cella della tabella contiene i costi di routing dall'origine alla destinazione per tale cella. Ad esempio, si supponga che un'azienda di consegna alimentare abbia 20 conducenti e che debbano trovare il conducente più vicino per prendere la consegna dal ristorante. Per risolvere questo caso d'uso, è possibile chiamare l'API Route matrix.

Per ogni itinerario, vengono restituiti i tempi di viaggio e le distanze. È possibile usare i costi calcolati per determinare quali route dettagliate calcolare usando l'API Indicazioni stradali.

La dimensione massima di una matrice per una richiesta asincrona è 700 e per la richiesta di sincronizzazione è 100 (il numero di origini moltiplicato per il numero di destinazioni).

Nota

Tutte le origini e le destinazioni devono essere contenute in un rettangolo delimitatore di 400 km x 400 km. In caso contrario, alcune celle della matrice verranno risolte come OUT_OF_REGION.

Invia richiesta matrice di route sincrona

Se lo scenario richiede richieste sincrone e la dimensione massima della matrice è minore o uguale a 100, potrebbe essere necessario effettuare una richiesta sincrona. La dimensione massima di una matrice per questa API è 100 (il numero di origini moltiplicato per il numero di destinazioni). Tenendo presente tale vincolo, alcuni esempi di possibili dimensioni della matrice sono: 10x10, 6x8, 9x8 (non deve essere quadrato).

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

Invia richiesta matrice di route asincrona

L'API asincrona è appropriata per l'elaborazione di grandi volumi di richieste di routing relativamente complesse. Quando si effettua una richiesta usando una richiesta asincrona, per impostazione predefinita il servizio restituisce un codice di risposta 202 lungo un URL di reindirizzamento nel campo Percorso dell'intestazione della risposta. Questo URL deve essere controllato periodicamente fino a quando non sono disponibili i dati di risposta o le informazioni sull'errore. Se waitForResults parametro nella richiesta è impostato su true, l'utente riceverà una risposta 200 se la richiesta viene completata in meno di 120 secondi.

La dimensione massima di una matrice per questa API è 700 (il numero di origini moltiplicato per il numero di destinazioni). Tenendo presente tale vincolo, alcuni esempi di possibili dimensioni della matrice sono: 50x10, 10x10, 28x25. 10x70 (non deve essere quadrato).

Le risposte asincrone vengono archiviate per 24 ore. L'URL di reindirizzamento restituisce una risposta 404 se usata dopo il periodo di scadenza.

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

Ecco una sequenza tipica di operazioni asincrone:

  1. Il client invia una richiesta POST matrice di route a Mappe di Azure

  2. Il server risponderà con uno dei seguenti elementi:

    Http 202 Accepted - Richiesta matrice di route accettata.

    HTTP Error: si è verificato un errore durante l'elaborazione della richiesta matrice di route. Potrebbe trattarsi di una richiesta non valida 400 o di qualsiasi altro codice di stato errore.

  3. Se la richiesta di route matrice è stata accettata correttamente, l'intestazione Location nella risposta contiene l'URL per scaricare i risultati della richiesta. Questo URI di stato è simile al seguente:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
  1. Il client invia una richiesta GET sull'URL di download ottenuto nel passaggio 3 per scaricare i risultati

Scaricare i risultati della sincronizzazione

Quando si effettua una richiesta POST per l'API di sincronizzazione matrice di route, il servizio restituisce il codice di risposta 200 per la richiesta riuscita e una matrice di risposte. Il corpo della risposta conterrà i dati e non sarà possibile recuperare i risultati in un secondo momento.

Scaricare i risultati asincroni

Quando una richiesta invia una risposta 202 Accepted, la richiesta viene elaborata usando la pipeline asincrona. Verrà assegnato un URL per controllare lo stato di avanzamento della richiesta asincrona nell'intestazione del percorso della risposta. Questo URI di stato è simile al seguente:

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

L'URL fornito dall'intestazione della posizione restituirà le risposte seguenti quando viene emessa una richiesta di GET.

HTTP 202 Accepted: la richiesta matrice è stata accettata ma è ancora in corso di elaborazione. Riprovare in qualche tempo.

HTTP 200 OK: la richiesta di matrice è stata elaborata correttamente. Il corpo della risposta contiene tutti i risultati.

Extends

Proprietà

headers
status

Proprietà ereditate

body

Corpo analizzato

request

Richiesta che ha generato questa risposta.

Dettagli proprietà

headers

headers: RawHttpHeaders & RouteRequestRouteMatrix202Headers

Valore della proprietà

status

status: "202"

Valore della proprietà

"202"

Dettagli proprietà ereditate

body

Corpo analizzato

body: unknown

Valore della proprietà

unknown

ereditato da HttpResponse.body

request

Richiesta che ha generato questa risposta.

request: PipelineRequest

Valore della proprietà

Ereditato da HttpResponse.request