- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- RouteMatrixOrigin
- Destinazione RouteMatrix
- Computazione extra
- Condizione ElementMatrixElement
Recupera un elenco di origini e destinazioni e restituisce un flusso contenente le informazioni sul percorso per ogni combinazione di origine e destinazione.
NOTA: questo metodo richiede di specificare una maschera di campo di risposta nell'input. Puoi fornire la maschera del campo di risposta utilizzando il parametro URL $fields
o fields
oppure utilizzando l'intestazione HTTP/gRPC X-Goog-FieldMask
(consulta i parametri e intestazioni degli URL disponibili). Il valore è un elenco di percorsi di campo separati da virgole. Consulta questa documentazione dettagliata sulla creazione dei percorsi di campo.
Ad esempio, con questo metodo:
- Maschera dei campi di tutti i campi disponibili (per l'ispezione manuale):
X-Goog-FieldMask: *
- Maschera sul campo delle durate del percorso, delle distanze, dello stato degli elementi, delle condizioni e degli indici degli elementi (un esempio di configurazione di produzione):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
È fondamentale includere status
nella maschera dei campi, altrimenti tutti i messaggi sembreranno corretti. Google sconsiglia l'utilizzo della maschera del campo di risposta con caratteri jolly (*
) perché:
- Selezionare solo i campi necessari aiuta il nostro server a salvare i cicli di calcolo, consentendoci di restituirti il risultato con una latenza più bassa.
- Selezionare solo i campi necessari nel job di produzione assicura prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta, che potrebbero richiedere un tempo di calcolo aggiuntivo. Se selezioni tutti i campi o selezioni tutti i campi al livello più alto, il rendimento potrebbe peggiorare perché tutti i nuovi campi che aggiungiamo verranno automaticamente inclusi nella risposta.
- Selezionare solo i campi necessari riduce le dimensioni della risposta e, di conseguenza, la velocità effettiva di rete.
Richiesta HTTP
POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
L'URL utilizza la sintassi di transcodifica gRPC.
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{ "origins": [ { object ( |
Campi | |
---|---|
origins[] |
Obbligatorio. Array di origini, che determina le righe della matrice di risposta. Alla cardinalità delle origini e delle destinazioni si applicano diverse restrizioni relative alle dimensioni:
|
destinations[] |
Obbligatorio. Array di destinazioni, che determina le colonne della matrice di risposta. |
travelMode |
Campo facoltativo. Specifica la modalità di trasporto. |
routingPreference |
Campo facoltativo. Specifica come calcolare il percorso. Il server tenta di utilizzare la preferenza di routing selezionata per calcolare la route. Se la preferenza di routing genera un errore o una latenza extra lunga, viene restituito un errore. Puoi specificare questa opzione solo quando |
departureTime |
Campo facoltativo. L'orario di partenza. Se non imposti questo valore, il valore predefinito sarà l'ora in cui hai effettuato la richiesta. Se imposti questo valore su un'ora già verificatasi, la richiesta non andrà a buon fine. Un timestamp in formato RFC3339 UTC "Zulu", con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
languageCode |
Campo facoltativo. Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per ulteriori informazioni, visita il sito http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Visita la pagina del supporto per le lingue per l'elenco delle lingue supportate. Se non fornisci questo valore, la lingua di visualizzazione viene dedotta dalla località della prima origine. |
regionCode |
Campo facoltativo. Il codice regione, specificato come valore di ccTLD ("dominio di primo livello") a due caratteri. Per ulteriori informazioni, visita la pagina https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains#Country_code_top-level_domains. |
extraComputations[] |
Campo facoltativo. Un elenco di calcoli aggiuntivi che possono essere utilizzati per completare la richiesta. Nota: questi calcoli aggiuntivi potrebbero restituire campi aggiuntivi nella risposta. Questi campi aggiuntivi devono essere specificati anche nella maschera del campo da restituire nella risposta. |
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
Incapsula le informazioni di percorso calcolate per una coppia di origine/destinazione nell'API v2.computeRouteMatrix. Questo protocollo può essere trasmesso al client.
Rappresentazione JSON |
---|
{ "status": { object ( |
Campi | |
---|---|
status |
Codice di stato di errore per questo elemento. |
condition |
Indica se il percorso è stato trovato o meno. Indipendente dallo stato. |
distanceMeters |
La distanza percorsa del percorso, in metri. |
duration |
Il tempo necessario per esplorare il percorso. Se imposti Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
staticDuration |
La durata del viaggio attraverso il percorso senza considerare le condizioni del traffico. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
travelAdvisory |
Ulteriori informazioni sul percorso. Ad esempio, informazioni sulle limitazioni e informazioni sui pedaggi |
fallbackInfo |
In alcuni casi, quando il server non è in grado di calcolare il percorso con le preferenze indicate per questa particolare coppia di origine/destinazione, può tornare a utilizzare una modalità di calcolo diversa. Se viene utilizzata la modalità riserva, questo campo contiene informazioni dettagliate sulla risposta di riserva. In caso contrario, questo campo non è impostato. |
originIndex |
Indice basato su zero dell'origine nella richiesta. |
destinationIndex |
Indice basato sulla destinazione della richiesta. |
Origine origine route
Un'unica origine per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{ "waypoint": { object ( |
Campi | |
---|---|
waypoint |
Obbligatorio. Waypoint origine |
routeModifiers |
Campo facoltativo. Modificatori per tutte le route che utilizzano questa origine |
Destinazione matrice
Un'unica destinazione per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{
"waypoint": {
object ( |
Campi | |
---|---|
waypoint |
Obbligatorio. Waypoint di destinazione |
Extracomputazione
Calcolo aggiuntivo da eseguire durante il completamento della richiesta.
Enum | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
Non utilizzato. Le richieste contenenti questo valore avranno esito negativo. |
TOLLS |
Informazioni sul pedaggio per gli elementi della matrice. |
Condizione Element MatrixElement
La condizione del percorso restituito.
Enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
Utilizzato solo quando status dell'elemento non va bene. |
ROUTE_EXISTS |
È stato trovato un percorso e le informazioni corrispondenti sono state inserite per l'elemento. |
ROUTE_NOT_FOUND |
Nessun percorso trovato. I campi contenenti informazioni sul percorso, come distanceMeters o duration , non verranno compilati nell'elemento. |