반환할 필드 선택

ComputeRoutes() 메서드를 호출할 때 응답에서 반환할 필드를 지정해야 합니다. URL 매개변수 $fields 또는 fields와 함께 제공하는 응답 필드 마스크를 사용하거나 HTTP/gRPC 헤더 X-Goog-FieldMask를 사용하여 이를 수행합니다. 자세한 내용은 시스템 매개변수를 참고하세요.

필드 마스크

필드 마스크 값은 쉼표로 구분된 필드 경로 목록입니다. 각 필드 경로는 메시지 계층 구조를 나타내는, 점으로 구분된 필드 이름 목록입니다. 필드 이름은 JSON 객체 키 또는 protobuf 필드 태그 이름입니다. 필드 경로는 최상위 응답 메시지 유형에서 시작하고 필요에 따라 하나 이상의 점이 오고 그 뒤에 다음 수준의 필드 이름이 옵니다. 일반적으로 필드 경로는 다음과 같은 방식으로 구성됩니다.

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

특별한 경우 필드 마스크는 모든 루트 수준 필드를 선택하는 와일드 카드 '*'입니다.

다음 예시에서는 ComputeRoutes() 메서드의 필드 마스크를 설정하는 방법을 보여줍니다.

예시 1

사용 가능한 모든 필드의 필드 마스크 (수동 검사용)

X-Goog-FieldMask: *

예 2

경로 수준 지속 시간, 거리 및 다중선의 필드 마스크 (프로덕션 설정의 예)

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

프로덕션에서는 와일드 카드 (*) 응답 필드 마스크를 사용하거나 최상위 수준 (경로)에 필드 마스크를 지정하지 않는 것이 좋습니다. 필요한 필드만 선택하면 됩니다.

  • 서버가 처리 주기를 단축하여 더 짧은 지연 시간으로 결과를 반환할 수 있습니다.

  • 안정적인 지연 시간 성능을 보장합니다. 향후 응답 필드를 더 추가할 수 있으며 이러한 새 필드에는 추가 계산 시간이 필요할 수 있습니다. 모든 필드를 선택하거나 최상위 수준의 모든 필드를 선택하면 새로 추가하는 필드가 자동으로 응답에 포함되므로 성능이 저하될 수 있습니다.

  • 결과적으로 응답 크기가 작아지고 네트워크 처리량이 높아집니다.

필드 경로를 구성하는 방법에 대한 자세한 내용은 field_mask.proto를 참조하세요.