- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
Prende un elenco di origini e destinazioni e restituisce un flusso contenente informazioni sul percorso per ogni combinazione di origine e destinazione.
NOTA:questo metodo richiede di specificare una maschera del campo di risposta nell'input. Puoi fornire la maschera del campo della risposta utilizzando il parametro URL $fields
o fields
oppure l'intestazione HTTP/gRPC X-Goog-FieldMask
(consulta i parametri URL e le intestazioni disponibili). Il valore è un elenco di percorsi dei campi separati da virgole. Consulta questa documentazione dettagliata su come creare i percorsi dei campi.
Ad esempio, in questo metodo:
- Maschera di tutti i campi disponibili (per l'ispezione manuale):
X-Goog-FieldMask: *
- Maschera per il campo di durata dei percorsi, distanze, stato degli elementi, condizione e indici degli elementi (un esempio di configurazione di produzione):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
È fondamentale includere status
nella maschera del campo, altrimenti tutti i messaggi sembreranno corretti. Google sconsiglia l'utilizzo della maschera per il campo di risposta con caratteri jolly (*
), perché:
- La selezione solo dei campi necessari aiuta il nostro server a salvare i cicli di calcolo, consentendoci di restituirti il risultato con una latenza inferiore.
- La selezione solo dei campi che ti servono nel tuo job di produzione garantisce prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta e questi nuovi campi potrebbero richiedere più tempo di calcolo. Se selezioni tutti i campi o tutti i campi al livello superiore, potresti riscontrare un peggioramento delle prestazioni perché qualsiasi nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.
- La selezione dei soli campi necessari comporta una riduzione delle dimensioni della risposta e, di conseguenza, una velocità effettiva di rete superiore.
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[] |
Obbligatoria. Array delle origini, che determina le righe della matrice di risposta. Alla cardinalità delle origini e delle destinazioni si applicano diverse limitazioni relative alle dimensioni:
|
destinations[] |
Obbligatoria. 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 la route. 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'ora di partenza. Se non imposti questo valore, per impostazione predefinita viene utilizzato il momento in cui hai effettuato la richiesta. NOTA: puoi specificare un Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
arrivalTime |
Campo facoltativo. L'ora di arrivo. NOTA: può essere impostato solo quando Un timestamp in formato "Zulu" RFC3339 UTC, 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, consulta la sezione Identificatore internazionale Unicode. Consulta l'elenco delle lingue supportate nella pagina Supporto delle lingue. Quando non fornisci questo valore, la lingua di visualizzazione viene dedotta dalla posizione della prima origine. |
regionCode |
Campo facoltativo. Il codice regione, specificato come valore a due caratteri ccTLD ("dominio di primo livello"). Per ulteriori informazioni, vedi Domini di primo livello nazionali. |
units |
Campo facoltativo. Specifica le unità di misura per i campi di visualizzazione. |
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 per poter essere restituiti nella risposta. |
trafficModel |
Campo facoltativo. Specifica le ipotesi da utilizzare per il calcolo del tempo nel traffico. Questa impostazione influisce sul valore restituito nel campo della durata in |
transitPreferences |
Campo facoltativo. Specifica le preferenze che influenzano il percorso restituito per le route |
Corpo della risposta
Contiene informazioni di route calcolate per una coppia origine/destinazione nell'API v2.computeRouteMatrix. Questo protocollo può essere trasmesso in streaming al client.
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
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 lungo il percorso, in metri. |
duration |
Il tempo necessario per percorrere il percorso. Se imposti Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
staticDuration |
La durata del percorso senza tenere conto delle condizioni del traffico. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
travelAdvisory |
Informazioni aggiuntive sul percorso. Ad esempio: informazioni sulle limitazioni e sui pedaggi |
fallbackInfo |
In alcuni casi, quando il server non è in grado di calcolare la route con le preferenze specificate per questa particolare coppia origine/destinazione, potrebbe ricorrere a una modalità di calcolo diversa. Quando viene utilizzata la modalità di riserva, questo campo contiene informazioni dettagliate sulla risposta di riserva. In caso contrario, il campo non viene configurato. |
localizedValues |
Rappresentazioni testuali delle proprietà di |
originIndex |
Indice in base zero dell'origine nella richiesta. |
destinationIndex |
Indice in base zero della destinazione nella richiesta. |
RouteMatrixOrigin
Un'unica origine per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{ "waypoint": { object ( |
Campi | |
---|---|
waypoint |
Obbligatoria. Waypoint di partenza |
routeModifiers |
Campo facoltativo. Modificatori per ogni percorso che la considera come origine |
RouteMatrixDestination
Una singola destinazione per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{
"waypoint": {
object ( |
Campi | |
---|---|
waypoint |
Obbligatoria. Waypoint di destinazione |
ExtraComputation
Calcoli aggiuntivi da eseguire durante il completamento della richiesta.
Enum | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
Non utilizzato. Le richieste contenenti questo valore non andranno a buon fine. |
TOLLS |
Informazioni sul pedaggio per gli elementi della matrice. |
RouteMatrixElementCondition
La condizione del percorso che viene restituito.
Enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
Utilizzato solo quando il status dell'elemento non è OK. |
ROUTE_EXISTS |
È stato trovato un percorso e sono state compilate le informazioni corrispondenti per l'elemento. |
ROUTE_NOT_FOUND |
Nessun percorso trovato. I campi contenenti informazioni sul percorso, come distanceMeters o duration , non verranno compilati nell'elemento. |
LocalizedValues
Rappresentazioni testuali di determinate proprietà.
Rappresentazione JSON |
---|
{ "distance": { object ( |
Campi | |
---|---|
distance |
Distanza di viaggio rappresentata in formato di testo. |
duration |
Durata rappresentata in formato testo prendendo in considerazione le condizioni del traffico. Nota: se non sono state richieste informazioni sul traffico, questo valore corrisponde al valore di staticDuration. |
staticDuration |
Durata rappresentata in formato testo senza tenere conto delle condizioni del traffico. |
transitFare |
Tariffa del trasporto pubblico rappresentata in formato testo. |