대중교통 경로에서는 해당 지역에서 이용할 수 있는 대중교통 옵션을 사용하여 내비게이션 안내를 제공합니다. 대중교통 옵션에는 버스, 지하철, 기차 등이 포함될 수 있습니다. 대중교통 경로에는 대중교통역으로 이동하거나 대중교통역에서 이동하거나 대중교통역 간에 이동하는 방법에 관한 안내도 포함됩니다. 대중교통 경로에서는 일반적으로 두 가지 이상의 이동 수단을 사용해야 하므로 경로를 요청하는 방법과 응답의 일부가 다릅니다.
대중교통 경로가 다른 경로와 다른 점
TRANSIT의 travelMode를 설정하여 요청하는 대중교통 경로는 다른 이동 수단 옵션을 사용하는 경로와 다릅니다.
동일한 객체와 옵션을 모두 요청할 수는 없으며 다른 경로와 비교할 때 응답에서 반환되는 필드가 다릅니다.
Routes API에서 단계는 모든 유형의 이동에서 일관되게 하나의 탐색 안내입니다. 따라서 각 탐색 안내는 단계입니다. 대중교통 경로 응답은 다른 이동 수단의 경로와 매우 유사하지만 몇 가지 중요한 차이점이 있습니다.
| 요청 차이 | 응답 차이 |
|---|---|
| 중간 경유지를 지정할 수 없습니다. | 대중교통 세부정보가 포함됩니다. |
| 친환경 경로를 가져올 수 없음 | stepsOverview에 각 이동 수단의 메타데이터가 포함됩니다. 이 메타데이터에는 해당 이동 수단의 단계 요약이 포함됩니다. 이 메타데이터를 요청하려면 stepsOverview 필드 마스크를 사용하세요. |
| 트래픽 데이터를 포함할지 여부와 방법을 지정할 수 없음 | |
| 피할 경로 기능을 지정할 수 없음 | |
transitPreferences만 지정할 수 있습니다. 자세한 내용은 TransitPreference를 참고하세요. |
대중교통 경로를 확인하려면 다음 단계를 따르세요.
- 출발지와 목적지를 설정합니다.
travelMode를TRANSIT로 설정합니다.- 필요한 응답을 얻으려면 적절한 필드 마스크를 추가하세요. 필요한 대중교통 경로 필드 요청을 참고하세요.
- 필요한 경우 선택적 매개변수를 설정합니다. 대중교통 경로의 매개변수 설정하기를 참고하세요.
필요한 대중교통 경로 필드 요청
필드 마스크를 사용하여 필요한 대중교통 경로 필드를 요청합니다. 다음 표에는 대중교통 경로에 대한 제안된 응답과 이를 요청하는 데 사용할 필드 마스크가 나와 있습니다.
| 이 정보를 요청하려면 다음 단계를 따르세요. | 이 필드 마스크 사용 |
|---|---|
| 모든 경로 세부정보 | * |
| 경로 구간의 대중교통 세부정보입니다. | legs |
| 경로의 각 단계별 예상 요금 및 현지화된 예상 요금입니다. | travelAdvisory |
| 기간 및 거리에 대해 현지화된 텍스트 | localizedValues |
대중교통 노선의 매개변수 설정
대중교통 경로와 관련된 매개변수는 다음과 같습니다.
| 이렇게 하려면 | 이 매개변수를 사용합니다. | 참고 |
|---|---|---|
| 대중교통 모드 선택 | travelMode: "TRANSIT" |
필수 항목입니다. 자세히 알아보기 |
| 도착 또는 출발 시간을 설정하세요 | arrivalTime: new Date(yyyy-mm-ddThh:mm:ssZ)
또는 departureTime: new Date(yyyy-mm-ddThh:mm:ssZ) |
선택사항입니다. 도착 시간 또는 출발 시간을 지정할 수 있습니다. 두 시간 모두 지정되지 않은 경우 departureTime은 현재 실행 시간 (now)으로 기본 설정됩니다. 현재 실행 시간 (now)을 기준으로 다음 시간 범위 내에서만 도착 시간과 출발 시간을 설정할 수 있습니다.
Date 객체로 표현됩니다.
참고: 대중교통 일정은 자주 변경되며, 이용 가능한 대중교통 여정은 시간이 지남에 따라 변경될 수 있습니다. 또한 예측 결과가 일관되게 제공된다고 보장할 수 없습니다. |
| 대체 경로 포함 | computeAlternativeRoutes: true |
선택사항입니다. 사용 가능한 경우 computeRoutes가 최대 3개의 추가 경로를 계산하도록 하려면 true로 설정합니다.
자세히 알아보기 |
| 대중교통 유형의 환경설정 지정 | transitPreference: {allowedTransitModes: ["BUS", "SUBWAY", "TRAIN", "LIGHT_RAIL", "RAIL"]}
참고: 선호하는 이동 수단을 지정하더라도 선호하는 이동 수단의 효율성과 가용성에 따라 반환된 경로에서 다른 대중교통 수단을 사용하거나 다른 대중교통 수단만 사용할 수 있습니다. |
선택사항입니다. 선호하는 대중교통 이동 수단을 지정합니다. 자세히 알아보기 |
| 대중교통 경로 환경설정 지정 | transitPreference: {routingPreference: "LESS_WALKING|FEWER_TRANSFERS"} |
선택사항입니다. 대중교통 경로 환경설정을 지정합니다. 자세히 알아보기 |
요청 예시
다음 예에서는 대중교통 경로를 요청하는 방법을 보여줍니다.
const request = { origin: 'Hunters Point San Francisco, CA 94124', destination: '201 Marine Dr, San Francisco, CA 94129', travelMode: 'TRANSIT', departureTime: new Date(), transitPreference: { allowedTransitModes: ['BUS', 'SUBWAY', 'TRAIN', 'LIGHT_RAIL', 'RAIL'], routingPreference: 'FEWER_TRANSFERS', // Alternatively, 'LESS_WALKING'. }, fields: ['path', 'legs', 'travelAdvisory', 'localizedValues'], };