- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
Cerca un elenco di origini e destinazioni e restituisce uno stream contenente informazioni sul percorso per ogni combinazione di luogo di partenza e destinazione.
NOTA:questo metodo richiede la specifica di una maschera del campo di risposta nell'input. Puoi fornire la maschera del campo di risposta utilizzando il parametro URL $fields
o fields
oppure l'intestazione HTTP/gRPC X-Goog-FieldMask
(consulta le intestazioni e i parametri URL disponibili). Il valore è un elenco separato da virgole di percorsi di campi. Consulta questa documentazione dettagliata sulla creazione dei percorsi dei campi.
Ad esempio, in questo metodo:
- Maschera di tutti i campi disponibili (per l'ispezione manuale):
X-Goog-FieldMask: *
- Maschera di campo con durate dei percorsi, distanze, stato degli elementi, condizione e indici degli elementi (un esempio di configurazione della produzione):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
È fondamentale includere status
nella maschera del campo, altrimenti tutti i messaggi verranno visualizzati correttamente. Google sconsiglia l'utilizzo della maschera del campo di risposta con caratteri jolly (*
), perché:
- La selezione dei soli campi di cui hai bisogno consente al nostro server di salvare i cicli di calcolo, consentendoci di restituirti il risultato con una latenza inferiore.
- La selezione dei soli campi necessari nel job di produzione garantisce prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta e questi nuovi campi potrebbero richiedere tempi di calcolo aggiuntivi. Se selezioni tutti i campi o tutti i campi al livello superiore, si potrebbe verificare un peggioramento delle prestazioni, poiché ogni nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.
- Se selezioni solo i campi necessari, la risposta avrà una dimensione inferiore e quindi una velocità effettiva di rete più elevata.
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 della risposta. Alla cardinalità delle origini e delle destinazioni si applicano diverse limitazioni di dimensioni:
|
destinations[] |
Obbligatorio. array di destinazioni, che determina le colonne della matrice di risposta. |
travelMode |
(Facoltativo) Specifica la modalità di trasporto. |
routingPreference |
(Facoltativo) Specifica come calcolare la route. Il server tenta di utilizzare la preferenza di routing selezionata per calcolare il percorso. Se la preferenza di routing genera un errore o una latenza molto lunga, viene restituito un errore. Puoi specificare questa opzione solo quando |
departureTime |
(Facoltativo) L'orario di partenza. Se non imposti questo valore, verrà usato per impostazione predefinita l'ora in cui hai effettuato la richiesta. NOTA: puoi specificare un valore Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
arrivalTime |
(Facoltativo) L'ora di arrivo. NOTA: può essere impostata solo quando il criterio Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
languageCode |
(Facoltativo) Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per saperne di più, consulta la sezione Identificatore di impostazioni internazionali Unicode. Per l'elenco delle lingue supportate, consulta la sezione Supporto delle lingue. Quando non specifichi questo valore, la lingua di visualizzazione viene dedotta dalla località della prima origine. |
regionCode |
(Facoltativo) Il codice regione, specificato come valore a due caratteri ccTLD ("dominio di primo livello"). Per ulteriori informazioni, consulta Domini di primo livello nazionali. |
units |
(Facoltativo) Specifica le unità di misura per i campi di visualizzazione. |
extraComputations[] |
(Facoltativo) Un elenco di calcoli aggiuntivi che possono essere utilizzati per completare la richiesta. Nota: questi calcoli aggiuntivi possono restituire campi aggiuntivi nella risposta. Questi campi aggiuntivi devono essere specificati anche nella maschera del campo da restituire nella risposta. |
trafficModel |
(Facoltativo) Specifica le ipotesi da utilizzare per il calcolo del tempo nel traffico. Questa impostazione influisce sul valore restituito nel campo della durata nell'elemento |
transitPreferences |
(Facoltativo) Specifica le preferenze che influiscono sul percorso restituito per |
Corpo della risposta
Contiene informazioni sulla 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 da percorrere in metri. |
duration |
Il tempo necessario per percorrere il percorso. Se imposti Durata in secondi con un massimo di nove cifre frazionarie e termina con " |
staticDuration |
La durata del viaggio senza tenere conto delle condizioni del traffico. Durata in secondi con un massimo di nove cifre frazionarie e termina con " |
travelAdvisory |
Ulteriori informazioni sul percorso. Ad esempio: informazioni sulle restrizioni e sui pedaggi. |
fallbackInfo |
In alcuni casi, quando il server non è in grado di calcolare il percorso con le preferenze date per questa particolare coppia origine/destinazione, può 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, questo campo non viene impostato. |
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
Una singola origine per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{ "waypoint": { object ( |
Campi | |
---|---|
waypoint |
Obbligatorio. Tappa di partenza |
routeModifiers |
(Facoltativo) Modificatori per ogni percorso che lo considera come origine |
RouteMatrixDestination
Una destinazione unica per ComputeRouteMatrixRequest
Rappresentazione JSON |
---|
{
"waypoint": {
object ( |
Campi | |
---|---|
waypoint |
Obbligatorio. Tappa 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 della route restituita.
Enum | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
Utilizzato solo quando 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 testuale, prendendo in considerazione le condizioni del traffico. Nota: se non sono state richieste informazioni sul traffico, questo valore corrisponde a staticDuration. |
staticDuration |
Durata rappresentata in formato testuale senza tenere conto delle condizioni del traffico. |
transitFare |
Tariffa del trasporto pubblico rappresentata in formato di testo. |