Escolha os campos a serem retornados

Ao chamar o método ComputeRoutes(), especifique quais campos você quer que sejam retornados na resposta. Para isso, use uma máscara de campo de resposta, que você fornece com o parâmetro de URL $fields ou fields, ou use o cabeçalho HTTP/gRPC X-Goog-FieldMask. Para mais informações, consulte Parâmetros de sistema.

Máscara de campo

O valor da máscara de campo é uma lista separada por vírgulas de caminhos de campo. Cada caminho de campo é uma lista separada por pontos de nomes de campos que representam a hierarquia da mensagem. Um nome de campo é a chave do objeto JSON ou o nome da tag do campo protobuf. O caminho do campo começa com o tipo de mensagem de resposta de nível superior e é seguido opcionalmente por um ou mais pontos e, em seguida, pelo próximo nível de nome do campo. Em geral, os caminhos de campo são construídos da seguinte maneira:

topLevelField[.secondLevelField][.thirdLevelField][...]

Um caso especial de máscara de campo é um caractere curinga "*", que seleciona todos os campos de nível raiz.

Exemplos

O exemplo a seguir demonstra como definir máscaras de campo para o método ComputeRoutes().

Exemplo 1

Máscara de campo de todos os campos disponíveis (para inspeção manual).

X-Goog-FieldMask: *

Exemplo 2

Máscara de campo de duração, distância e polilinha no nível da rota (exemplo de configuração de produção).

X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline

Não recomendamos o uso da máscara de campo de resposta curinga (*) ou a especificação da máscara de campo no nível superior (rotas) em produção. Selecionar apenas os campos necessários:

  • Permite que nosso servidor salve ciclos de processamento, o que nos permite retornar seus resultados com uma latência menor.

  • Garante um desempenho de latência estável. Podemos adicionar mais campos de resposta no futuro, e esses novos campos podem exigir mais tempo de computação. Se você selecionar todos os campos ou todos os campos no nível superior, poderá ocorrer uma degradação da performance, porque qualquer novo campo adicionado será incluído automaticamente na sua resposta.

  • Resulta em um tamanho de resposta menor, o que se traduz em maior taxa de transferência de rede.

Para mais informações sobre como criar caminhos de campo, consulte o field_mask.proto.