ComputeRoutes()
메서드를 호출할 때는 응답에 반환할 필드를 지정해야 합니다. 이렇게 하려면 URL 매개변수 $fields
또는 fields
와 함께 제공하는 응답 필드 마스크를 사용하거나 HTTP/gRPC 헤더 X-Goog-FieldMask
를 사용하면 됩니다. 자세한 내용은 시스템 매개변수를 참고하세요.
필드 마스크
필드 마스크 값은 쉼표로 구분된 필드 경로 목록입니다. 각 필드 경로는 메시지 계층 구조를 나타내는 필드 이름을 점으로 구분한 목록입니다. 필드 이름은 JSON 객체 키이거나 protobuf 필드 태그 이름입니다. 필드 경로는 최상위 응답 메시지 유형부터 시작하며, 선택적으로 그 뒤에 1개 이상의 점과 다음 수준의 필드 이름이 옵니다. 일반적으로 필드 경로는 다음과 같은 방식으로 구성됩니다.
topLevelField[.secondLevelField][.thirdLevelField][...]
특수 케이스 필드 마스크는 모든 루트 수준 필드를 선택하는 와일드 카드 '*'입니다.
예
다음 예에서는 ComputeRoutes()
메서드의 필드 마스크를 설정하는 방법을 보여줍니다.
예 1
사용 가능한 모든 필드의 필드 마스크 (수동 검사용)
X-Goog-FieldMask: *
예 2
경로 수준 소요 시간, 거리, 다중선의 필드 마스크 (프로덕션 설정 예)
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline
와일드 카드 (*) 응답 필드 마스크를 사용하거나 프로덕션의 최상위 수준 (경로)에서 필드 마스크를 지정하는 것은 권장하지 않습니다. 필요한 필드만 선택하면 됩니다.
서버가 처리 주기를 절약하여 지연 시간을 단축하여 결과를 반환할 수 있습니다.
안정적인 지연 시간 성능을 보장합니다. 향후 더 많은 응답 필드를 추가할 수 있으며 이러한 새 필드에는 추가 계산 시간이 필요할 수 있습니다. 모든 필드를 선택하거나 최상위 수준에서 모든 필드를 선택하면 추가되는 새 필드가 응답에 자동으로 포함되므로 성능이 저하될 수 있습니다.
따라서 응답 크기가 작아져 네트워크 처리량이 높아집니다.
필드 경로를 구성하는 방법에 대한 자세한 내용은 field_mask.proto를 참조하세요.