Ao chamar o método ComputeRoutes()
, especifique os campos que você
que queremos retornados na resposta. Isso é feito usando uma máscara de campo de resposta, que
fornecido com o parâmetro de URL $fields
ou fields
, ou usando o
Cabeçalho HTTP/gRPC X-Goog-FieldMask
. Para mais informações, consulte
Parâmetros do sistema.
Máscara de campo
O valor da máscara de campo é uma lista separada por vírgulas de caminhos de campo. Caminho de cada campo é uma lista separada por pontos de nomes de campos que representam a hierarquia da mensagem. Um do campo é a chave de objeto JSON ou o nome da tag de campo protobuf. O o caminho do campo começa no tipo de mensagem de resposta de nível superior e pode ser seguida por um ou mais pontos e pelo próximo nível do nome do campo. Em geral, os caminhos de campo são construídos da seguinte maneira:
topLevelField[.secondLevelField][.thirdLevelField][...]
Uma máscara de campo de caso especial é um caractere curinga "*", que seleciona todos os valores no nível raiz campos.
Exemplos
O exemplo a seguir demonstra como definir máscaras de campo para o
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 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
Não é recomendável usar a máscara de campo de resposta com caractere curinga (*) ou especificar a máscara de campo no nível superior (rotas) na produção. Selecionando apenas o necessários:
Permite que nosso servidor economize ciclos de processamento, o que nos permite devolver seus resultados com menor latência.
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 se você selecionar todos os campos no nível superior, poderá encontrar degradação do desempenho, porque todos os campos novos adicionados são automaticamente incluído na sua resposta.
O resultado é um tamanho de resposta menor, o que se traduz em maior taxa de transferência de rede.
Para mais informações sobre como construir caminhos de campo, consulte a field_mask.proto.