Retorna o trajeto principal, juntamente com trajetos alternativos opcionais, considerando um conjunto de pontos de referência terminais e intermediários.
OBSERVAÇÃO: esse método exige a especificação de uma máscara de campo de resposta na entrada. É possível fornecer a máscara de campo de resposta usando o parâmetro de URL $fields
ou fields
ou o cabeçalho HTTP/gRPC X-Goog-FieldMask
. Consulte os cabeçalhos e parâmetros de URL disponíveis. O valor é uma lista separada por vírgulas de caminhos de campo. Consulte esta documentação detalhada sobre como criar os caminhos de campo.
Por exemplo, neste método:
- Máscara de campo de todos os campos disponíveis (para inspeção manual):
X-Goog-FieldMask: *
- Máscara de campo da duração, distância e polilinha no nível do trajeto (um exemplo de configuração de produção):
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline
O Google não recomenda o uso da máscara de campo de resposta curinga (*
) nem a especificação da máscara de campo no nível superior (routes
) pelos seguintes motivos:
- Selecionar apenas os campos necessários ajuda nosso servidor a salvar ciclos de computação, o que nos permite retornar o resultado com uma latência menor.
- Selecionar apenas os campos necessários para o job de produção garante um desempenho de latência estável. Podemos adicionar mais campos de resposta no futuro, e esses novos campos podem exigir tempo de computação extra. Se você selecionar todos os campos ou todos os campos no nível superior, poderá haver uma queda no desempenho, porque qualquer campo novo adicionado será automaticamente incluído na resposta.
- Selecionar apenas os campos necessários resulta em uma resposta menor e, portanto, em maior capacidade de rede.
Solicitação HTTP
POST https://routespreferred.googleapis.com/v1alpha:computeRoutes
O URL usa a sintaxe de transcodificação gRPC.
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
Representação JSON |
---|
{ "origin": { object ( |
Campos | |
---|---|
origin |
Obrigatório. Ponto de referência da origem. |
destination |
Obrigatório. Ponto de referência do destino. |
intermediates[] |
Opcional. Um conjunto de waypoints ao longo do trajeto (excluindo pontos de terminal), para parada ou passagem. Até 25 waypoints intermediários são permitidos. |
travelMode |
Opcional. Especifica o meio de transporte. |
routingPreference |
Opcional. Especifica como calcular a rota. O servidor tenta usar a preferência de roteamento selecionada para calcular a rota. Se a preferência de roteamento resultar em um erro ou em uma latência extralonga, um erro será retornado. No futuro, poderemos implementar um mecanismo substituto para usar uma opção diferente quando a opção preferida não fornecer um resultado válido. Só é possível especificar essa opção quando |
polylineQuality |
Opcional. Especifica sua preferência pela qualidade da polilinha. |
polylineEncoding |
Opcional. Especifica a codificação preferencial para a polilinha. |
departureTime |
Opcional. A hora de partida. Se você não definir esse valor, ele será usado como padrão para o horário em que a solicitação foi feita. Se você definir esse valor para um horário que já ocorreu, a solicitação falhará. Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
computeAlternativeRoutes |
Especifica se é necessário calcular rotas alternativas além da rota. |
routeModifiers |
Opcional. Um conjunto de condições a serem atendidas que afetam a forma como os trajetos são calculados. |
languageCode |
Opcional. O código de idioma BCP-47, como "pt-BR" ou "en-US". Para mais informações, consulte http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Consulte Compatibilidade de idiomas para ver a lista de idiomas compatíveis. Quando você não fornece esse valor, o idioma de exibição é inferido com base no local da solicitação de trajeto. |
units |
Opcional. Especifica as unidades de medida para os campos de exibição. Isso inclui o campo |
optimizeWaypointOrder |
Se OptimizeWaypointOrder for definido como true, será feita uma tentativa de reordenar os waypoints intermediários especificados para minimizar o custo total do trajeto. Se algum dos waypoints intermediários estiver percorrendo esse modo, a solicitação falhará. Use ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index para encontrar a nova ordem. Se routes.optimized_intermediate_waypoint_index não for solicitado no cabeçalho |
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de ComputeRoutesResponse
.
Escopos de autorização
Requer o seguinte escopo OAuth:
https://www.googleapis.com/auth/maps-platform.routespreferred
Para mais informações, consulte a Visão geral do OAuth 2.0.