Method: computeRouteMatrix

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://routespreferred.googleapis.com/v1: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 (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Campi
origins[]

object (RouteMatrixOrigin)

Obbligatorio. Array di origini, che determina le righe della matrice della risposta. Alla cardinalità di origini e destinazioni si applicano diverse limitazioni di dimensioni:

  • Il numero di elementi (origini × destinazioni) non deve in ogni caso essere maggiore di 625.
  • Il numero di elementi (origini × destinazioni) non deve essere maggiore di 100 se routingPreference è impostato su TRAFFIC_AWARE_OPTIMAL.
  • Il numero di tappe (origini + destinazioni) specificato come placeId non deve essere superiore a 50.
destinations[]

object (RouteMatrixDestination)

Obbligatorio. array di destinazioni, che determina le colonne della matrice di risposta.

travelMode

enum (RouteTravelMode)

(Facoltativo) Specifica la modalità di trasporto.

routingPreference

enum (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. In futuro, potremmo implementare un meccanismo di riserva per utilizzare un'opzione diversa quando l'opzione preferita non fornisce un risultato valido. Puoi specificare questa opzione solo quando travelMode è DRIVE o TWO_WHEELER, altrimenti la richiesta non va a buon fine.

departureTime

string (Timestamp format)

(Facoltativo) L'orario di partenza. Se non imposti questo valore, verrà utilizzata per impostazione predefinita l'ora in cui hai effettuato la richiesta. Se imposti questo valore su un'ora già avvenuta, la richiesta non va a buon fine.

Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RouteMatrixElement.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Per ulteriori informazioni, consulta la panoramica di OAuth 2.0.