HERE路由API V8:如何通过多次通过航路点获取路线

问题描述 投票:1回答:1

在v7中,这是通过多个直通航路点获取路线的方法:

https://route.api.here.com/routing/7.2/calculateroute.json?waypoint0=32.353514,-61.126775&waypoint1=passThrough!32.365181,-61.102086&waypoint2=32.360273,-61.091979&mode=fastest;pedestrian ...

在v8 api参考中,似乎有“ via”,似乎用于在航路点上停留。

我尝试过https://router.hereapi.com/v8/routes?transportMode=pedestrian&return=summary,polyline,actions,instructions&origin=42.353514,-71.126775;42.365181,-71.102086&destination=42.360273,-71.091979&via=42.365181,-71.102086 ..

它将在路线中生成2条腿(v8定义中的“节”)。我希望有一条腿。

v8 developer guide页面提到passThrough:

航路点可以代表中途停留点(即,在重新选择路线之前将花费一些时间的点),或者仅影响路线形状但未进行实际停靠的直通点。

但是我无法弄清楚如何在v8中查询具有多个通过点的路线。

有什么建议吗?

谢谢!

here-api
1个回答
0
投票

我不确定在V8中返回2个部分而不是一个部分是一个问题。

关于直通点,在API reference中将查询参数WaypointOptions描述为via

Supported waypoint options:

- stopDuration: desired duration for the stop, in seconds.

因此,我假设所有请求都将不带选项viastopDuration参数作为直通点。但是您始终可以添加!stopDuration=0以确保100%正确。

此请求(具有stopDuration = 0或不具有此选项的https://router.hereapi.com/v8/routes?transportMode=car&return=travelSummary,summary,polyline,actions&origin=42.353514,-71.126775&destination=42.360273,-71.091979&via=42.365181,-71.102086!stopDuration=0&apikey=YOUR_API_KEY] >>

返回摘要:

"summary": {
  "duration": 714,
  "length": 3893,
  "baseDuration": 637
}

并且此请求的stopDuration = 900https://router.hereapi.com/v8/routes?transportMode=car&return=travelSummary,summary,polyline,actions&origin=42.353514,-71.126775&destination=42.360273,-71.091979&via=42.365181,-71.102086!stopDuration=900&apikey=YOUR_API_KEY

返回摘要:

"summary": {
  "duration": 714,
  "length": 3893,
  "baseDuration": 1537
}

如您所见,baseDuration根据要求增加了900。

© www.soinside.com 2019 - 2024. All rights reserved.