Dato un insieme di tappe terminali e intermedi e un obiettivo di percorso, calcola il percorso migliore per raggiungerlo. Restituisce anche il percorso più veloce e il percorso più breve come percorsi di riferimento.
NOTA: questo metodo richiede l'indicazione di una maschera per il campo della 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 di percorsi dei campi separati da virgole. Consulta questa documentazione dettagliata su come creare i percorsi dei campi.
Ad esempio, in questo metodo:
- Maschera per tutti i campi disponibili (per l'ispezione manuale):
X-Goog-FieldMask: *
- Maschera per il campo delle informazioni su distanze di percorso, durate, token e pedaggi:
X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo
Google sconsiglia l'utilizzo della maschera per il campo di risposta con caratteri jolly (*
) o di specificarne la maschera al livello superiore (routes
), perché:
- La selezione dei soli campi necessari 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 più alto, potresti riscontrare un peggioramento delle prestazioni perché qualsiasi nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.
- La selezione solo dei campi necessari comporta una riduzione delle dimensioni della risposta e, di conseguenza, una velocità effettiva di rete superiore.
Richiesta HTTP
POST https://routespreferred.googleapis.com/v1:computeCustomRoutes
L'URL utilizza la sintassi di transcodifica gRPC.
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{ "origin": { object ( |
Campi | |
---|---|
origin |
Obbligatorio. Waypoint di partenza. |
destination |
Obbligatorio. Waypoint di destinazione. |
intermediates[] |
Campo facoltativo. Una serie di tappe lungo il percorso (esclusi i punti terminali), che consentono di fermarsi o di passare. Sono supportati fino a 25 tappe intermedi. |
travelMode |
Campo facoltativo. Specifica la modalità di trasporto. Al momento è supportato solo Drive. |
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 molto lunga, viene restituito un errore. In futuro, potremmo implementare un meccanismo di riserva per utilizzare un'opzione diversa quando l'opzione preferita non dà un risultato valido. Puoi specificare questa opzione solo quando |
polylineQuality |
Campo facoltativo. Specifica la tua preferenza per la qualità della polilinea. |
polylineEncoding |
Campo facoltativo. Specifica la codifica preferita per la polilinea. |
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 orario già verificato, la richiesta non andrà a buon fine. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
routeModifiers |
Campo facoltativo. Un insieme di condizioni da soddisfare che influiscono sul modo in cui vengono calcolati i percorsi. |
routeObjective |
Obbligatorio. Un obiettivo di percorso per cui ottimizzare. |
languageCode |
Campo facoltativo. Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per ulteriori informazioni, vedi http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Consulta la pagina Supporto delle lingue per consultare l'elenco delle lingue supportate. Se non specifichi questo valore, la lingua di visualizzazione viene dedotta dalla località della richiesta di route. |
units |
Campo facoltativo. Specifica le unità di misura per i campi di visualizzazione. Questo include il campo |
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene un'istanza di ComputeCustomRoutesResponse
.
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.