L'API Routes può restituire percorsi in auto ottimizzati per una distanza di viaggio più breve quando attivi i percorsi con distanza più breve.
Quando richiedi un percorso più breve, il servizio restituisce quanto segue:
- Il percorso predefinito, ovvero un percorso ottimizzato principalmente per l'orario di arrivo stimato.
- Un percorso più breve ottimizzato per ridurre al minimo la distanza percorsa durante l'intero viaggio.
Che cos'è e perché utilizzarlo
Un percorso più breve dà la priorità alla distanza rispetto al comfort di guida o alla velocità. Ad esempio, potrebbe preferire le strade locali anziché le autostrade, percorrere strade sterrate o passare attraverso parcheggi. Non restituisce manovre che Google Maps sa essere illegali.
Richiedi un percorso più breve
La richiesta deve soddisfare i seguenti criteri:
- Imposta
travelMode
suDRIVE
,BICYCLE
oTWO_WHEELER
. - Imposta
requestedReferenceRoutes
suSHORTER_DISTANCE
. - Imposta una maschera del campo di risposta per restituire le proprietà di risposta associate a un percorso più breve:
routes.routeLabels
: identifica ogni percorso comeDEFAULT_ROUTE
,SHORTER_DISTANCE
oDEFAULT_ROUTE_ALTERNATE
.routes.routeToken
: un token percorso che puoi passare all'SDK Navigation per recuperare un percorso personalizzato.
- Non includere
Via
waypoint intermedi. - Non includere il parametro
optimizeWaypointOrder
. - (Facoltativo) Imposta una maschera del campo di risposta per restituire le seguenti proprietà associate sia al percorso predefinito sia a quello più breve:
routes.distanceMeters
: restituisce la distanza del percorso.routes.duration
: restituisce la durata del percorso.
Per informazioni di riferimento, consulta ReferenceRoute e RouteLabel.
Richiesta di esempio: percorso più breve
Il seguente codice mostra una richiesta di un percorso più breve. In questo esempio, utilizzi la maschera dei campi di risposta per restituire i campi associati sia al percorso predefinito sia a quello più breve con le seguenti maschere di campi:
routes.distanceMeters
routes.duration
curl -X POST -H 'content-type: application/json' -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE", "requestedReferenceRoutes": ["SHORTER_DISTANCE"], }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \ -H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Esempio di risposta con percorso più breve
{
"routes": [
{
"distanceMeters": 138943,
"duration": "5373s",
"routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
"routeLabels": [
"DEFAULT_ROUTE"
]
},
{
"distanceMeters": 112610,
"duration": "7165s",
"routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
"routeLabels": [
"SHORTER_DISTANCE"
]
}
]
}
Richiesta di esempio: percorso più breve e a basso consumo di carburante
Il codice seguente mostra una richiesta sia di un percorso più breve sia di un percorso con un minore consumo di carburante.
`
curl -X POST -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL", "requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }'
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'
Risposta di esempio: Percorso più breve e a basso consumo di carburante
In questo caso, la distanza più breve e il percorso più efficiente dal punto di vista del consumo di carburante sono uguali, pertanto viene restituito questo percorso e routeLabel
è incluso per entrambi i tipi di percorso.
{ "routes": [ { "distanceMeters": 138943, "duration": "5375s", "routeToken": "Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ", "routeLabels": [ "DEFAULT_ROUTE" ] }, { "distanceMeters": 112610, "duration": "7156s", "routeToken": "CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f", "routeLabels": [ "FUEL_EFFICIENT", "SHORTER_DISTANCE" ] } ] }
Aree geografiche supportate
I percorsi con distanze più brevi sono supportati in tutte le regioni.
Fatturazione
Google Maps Platform non addebita costi aggiuntivi per l'utilizzo di una funzionalità sperimentale. Ti verrà addebitato un importo in base all'utilizzo dell'API e ad altri parametri impostati.
Scopri di più sulla fatturazione per l'API Routes.