Routes Preferred API의 ComputeRouteMatrix
메서드를 사용하여 여러 출발지 및 목적지에 대한 경로의 거리와 소요시간을 계산할 수 있습니다. ComputeRouteMatrix
는 스트리밍 gRPC 호출과 REST HTTP 호출을 모두 지원합니다.
출발지와 목적지 쌍 목록이 제공되면 ComputeRouteMatrix
는 각 출발지에서 시작하여 각 목적지에서 끝나는 경로의 거리와 소요 시간을 계산합니다. 스트림의 각 요소는 단일 경로의 정보에 해당합니다.
ComputeRouteMatrix
메서드에는 거리 행렬 서비스에 비해 다음과 같은 여러 장점이 있습니다.
- 스트리밍을 사용하면 전체 행렬이 계산되기 전에 요소를 반환할 수 있어 지연 시간이 줄어듭니다.
ComputeRouteMatrix
에는 트래픽 계산을 위한 세분화된 옵션이 있으므로 품질 지연 시간 절충안을 결정할 수 있습니다.- 요청은 Google 인프라 내에서 더 높은 우선순위로 실행되므로 가용성이 높아집니다.
- 경유지의 방향 (이동 방향) 및 도로 측면 정보를 지정할 수 있습니다.
- 경로 거리 및 도착예정시간과 함께 통행료 정보 반환을 요청할 수 있습니다.
ComputeRouteMatrix 메서드 사용 설정
코드에서 ComputeRouteMatrix
메서드를 사용하려면 먼저 이 메서드를 사용 설정해야 합니다. Routes Preferred API 메서드 사용 설정에 대한 자세한 내용은 시작하기를 참조하세요.
ComputeRouteMatrix 메서드 사용
ComputeRouteMatrix
메서드는 경로 기본 설정 v1 엔드포인트를 통해 사용할 수 있습니다.
자세한 내용은 다음 문서를 참조하세요.
다음 일반 단계에서는 gRPC를 사용하여 ComputeRouteMatrix
메서드를 호출하는 방법을 설명합니다.
googleapis 저장소에서 필요한 프로토버퍼를 확인합니다.
https://github.com/googleapis/googleapis/tree/master/google/maps/routes
Go와 같은 일부 빌드 시스템에서는 이 작업을 자동으로 수행할 수도 있습니다.
선호하는 언어와 빌드 도구 세트를 사용하여 관련 프로토버퍼 코드를 생성합니다.
요청을 생성합니다. 요청과 함께 필수 메타데이터 2개를 전송해야 합니다.
- X-Goog-Api-Key는 API 키로 설정해야 합니다.
X-Goog-Fieldmask는 응답에서 필요한 쉼표로 구분된 필드 목록으로 설정되어야 합니다. 예: X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status. 와일드 카드 문자 (*)를 사용하여 모든 필드를 나타낼 수 있지만, 이는 권장되지 않습니다. 와일드 카드 문자를 사용하여 API 응답을 테스트하고 이해하되 프로덕션 코드의 필드 마스크에 원하는 필드를 명시적으로 나열합니다.
필드 마스크 문자열을 구성하는 방법에 대한 자세한 내용은 https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto를 참고하세요. 필요하지 않은 필드를 사용 중지하면 추가 계산이 필요할 수 있으므로 지연 시간을 줄일 수 있습니다. 필요한 필드를 지정하고 더 많은 계산이 필요한 새 필드는 나중에 추가되는 경우 지연 시간이 안정적으로 유지됩니다.
요청을
routespreferred.googleapis.com:443
로 보냅니다.TLS 프로토콜을 사용해야 합니다.
ComputeRouteMatrix
메서드를 사용하는 예는 경로 매트릭스 (베타) 계산 예시를 참조하세요.
ComputeRouteMatrix
메서드의 한 가지 특징은 전체 스트림 또는 개별 요소에 대해 오류 코드가 반환될 수 있다는 점입니다. 예를 들어 요청의 형식이 잘못된 경우 (예: 출처가 0인 경우) 스트림 연결은 오류를 반환합니다. 하지만 오류가 스트림의 일부 요소에만 적용되는 경우 (예: 출발지에 잘못된 장소 ID 설정) 오류의 영향을 받는 요소에만 오류 코드가 포함됩니다.
스트림에서 반환되는 요소는 순서와 관계없이 반환이 보장되지 않습니다. 따라서 각 요소에는 origin_index
와 destination_index
가 포함됩니다. 요청에서 지정된 출발지와 목적지의 경우 경로 출발지는 특정 요소의 origins[origin_index]
와 같고 경로 대상은 destinations[destination_index]
와 같습니다. 이러한 배열은 0부터 시작하는 색인입니다. 출발지 및 대상 목록 순서를 저장하는 것이 중요합니다.
통행료 계산
통행료 계산에 대한 자세한 내용은 통행료 계산을 참조하세요.
통행료 계산 예는 경로 매트릭스 예 계산을 참고하세요.