라우팅 요약 계산
텍스트 검색 (신규) 또는 주변 지역 검색 (신규)을 사용하여 응답에 있는 각 장소까지의 이동 시간과 거리를 계산하려면 다음 단계를 따르세요.
-
요청에서
routingParameters.origin
매개변수를 전달하여 라우팅 원본의 위도 및 경도 좌표를 지정합니다. 이 매개변수는 응답에 있는 각 장소까지의 시간과 거리를 계산하는 데 필요합니다. -
응답에
routingSummaries
배열이 포함되도록 필드 마스크에routingSummaries
를 포함합니다. 이 배열에는 라우팅 출발지에서 응답의 각 장소까지의 소요 시간과 거리가 포함됩니다.
API 탐색기를 사용하면 API와 API 옵션을 숙지할 수 있도록 라이브 요청을 할 수 있습니다.
텍스트 검색 (신규) 사용
다음 요청에서는 텍스트 검색 (신규) 응답에 있는 각 장소까지의 이동 시간과 거리를 계산합니다.
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
응답에는 두 개의 JSON 배열이 포함됩니다. places
배열에는 일치하는 장소가 포함되고 routingSummaries
배열에는 각 장소까지 이동하는 데 걸리는 시간과 거리가 포함됩니다.
{ "places": [ { object (Place) } ] "routingSummaries": [ { object (RoutingSummary) } }
routingSummaries
배열의 각 요소는 places
배열의 위치와 동일한 배열 위치에 있습니다. 즉, routingSummaries[0]
의 요소는 places[0]
의 장소에 해당합니다.
routingSummaries
의 배열 길이는 places
의 배열 길이와 같습니다. 장소의 routingSummary
를 사용할 수 없는 경우 배열 항목은 비어 있습니다.
이 예시에서는 라우팅 출발지에서 각 장소까지의 소요 시간과 거리를 계산하므로 응답의 routingSummaries.legs
필드에는 라우팅 출발지에서 장소까지의 duration
및 distanceMeters
가 포함된 단일 Leg
객체가 포함됩니다.
{ "places": [ { "formattedAddress": "1, Westfield Sydney Central Plaza, 450 George St, Sydney NSW 2000, Australia", "displayName": { "text": "Gözleme King Sydney", "languageCode": "en" } }, { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, … ] "routingSummaries": [ { "legs": [ { "duration": "597s", "distanceMeters": 2607 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3fa97cd745:0x6aecf365bf497c08!3e0" }, { "legs": [ { "duration": "562s", "distanceMeters": 2345 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3da97f60c1:0x845f3273bd764f6c!3e0" }, … ] }
이 예에서 라우팅 원점에서 검색 결과의 첫 번째 장소까지의 시간과 거리는 597초와 2, 607미터입니다.
주변 지역 검색 사용
이 예에서는 Nearby Search 응답에서 각 장소까지의 이동 시간과 거리를 계산합니다. 이 예에서는 오스트레일리아 시드니의 레스토랑을 검색하고 위치 제한과 라우팅 출발지를 동일한 위도 및 경도 좌표로 설정합니다.
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": -33.8688, "longitude": 151.1957362}, "radius": 500.0 } }, "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key:API_KEY" \ -H "X-Goog-FieldMask: places.displayName,routingSummaries" \ https://places.googleapis.com/v1/places:searchNearby
locationRestriction
와 라우팅 출발지에 동일한 좌표를 사용할 필요는 없습니다. 예를 들어 locationRestriction
을 시드니의 중심점으로 설정하여 검색 결과가 해당 원으로 편향되도록 합니다. 그런 다음 라우팅 원점을 집의 좌표, 즉 검색 원 내의 다른 위치로 설정합니다. 그러면 요청에 따라 검색 결과가 원으로 편향되고 집 위치를 기반으로 경로 요약이 계산됩니다.
이동 옵션 지정
기본적으로 기간 및 거리 계산은 자동차를 기준으로 합니다. 하지만 검색에서 차량 유형과 기타 옵션을 관리할 수 있습니다.
-
routingParameters.travelMode
매개변수를 사용하여 교통수단을DRIVE
,BICYCLE
,WALK
또는TWO_WHEELER
로 설정합니다. 이러한 옵션에 대한 자세한 내용은 경로에 사용할 수 있는 차량 유형을 참고하세요. -
routingParameters.routingPreference
속성을 사용하여 라우팅 환경설정 옵션을TRAFFIC_UNAWARE
(기본값),TRAFFIC_AWARE
또는TRAFFIC_AWARE_OPTIMAL
로 설정합니다. 각 옵션의 데이터 품질과 지연 시간은 서로 다릅니다. 자세한 내용은 트래픽 데이터를 포함할지 여부와 방법을 지정하기를 참고하세요.routingParameters.routingPreference
속성은 미리보기 (GA 이전)directionsUri
필드에 포함된 방향에 영향을 미칩니다. Google 지도에서 링크를 열 때 교통 옵션을 표시하기 때문입니다. -
routingParameters.routeModifiers
속성을 사용하여avoidTolls
,avoidHighways
,avoidFerries
,avoidIndoor
을 지정합니다. 이러한 옵션에 대한 자세한 내용은 피할 경로 기능 지정을 참고하세요.
다음 예에서는 이동 모드를 DRIVE
로 지정하고 고속도로를 피하도록 지정합니다.
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 }, "travelMode":"DRIVE", "routeModifiers": { "avoidHighways": true } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
기능을 사용해 보세요.
API 탐색기를 사용하면 API 및 API 옵션에 익숙해질 수 있도록 샘플 요청을 할 수 있습니다.
페이지 오른쪽에서 API 아이콘 api을 선택합니다.
원하는 경우 요청 매개변수를 수정합니다.
실행 버튼을 선택합니다. 대화상자에서 요청을 보낼 때 사용할 계정을 선택합니다.
API 탐색기 패널에서 전체 화면 아이콘 전체 화면을 선택하여 API 탐색기 창을 펼칩니다.