[在Google Maps API中,有这样的调用:https://maps.googleapis.com/maps/api/directions/json?origin=[START]&destination=[END]&sensor=false
您将[START]
和[END]
值传递到网址中,它为您提供了方向,行进时间,交通状况等
这里地图提供了类似的API:https://route.ls.hereapi.com/routing/7.2/calculateroute.json?apiKey=[API_KEY]&waypoint0=geo![START_LAT_LONG]&waypoint1=geo![END_LAT_LON]&mode=fastest;car;traffic:enabled
问题是:它需要点的纬度/经度,而我尝试替换的功能会将其作为地址字符串传递(例如:123 Main St Springfield MA 05050
)。由于我没有以其他任何格式获取它们,所以[[我希望能够使用类似这样的名称来调用URL:
https://route.ls.hereapi.com/routing/7.2/calculateroute.json?apiKey=[API_KEY]&waypoint0=addr![START_ADDRESS_STRING]&waypoint1=geo![END_LAT_LON]&mode=fastest;car;traffic:enabled
[该格式似乎无效,并且缺少the documentation on this functionality,仅提供geo!
,street!
(这似乎表示“使用这条街”而不是“从此地址开始”)和link!
(甚至不确定那是什么。]
我可以使用地理编码API来解决此问题,但是如果将我的API调用从1增加到3(如果我的启动和停止次数更多,则可以增加),这显然会减慢执行时间。如果没有更好的选择可以解决此问题,则我不附加此Here.com API调用。
首先使用Geocoder API的优势是,您可以先(编程或手动)分析Geocoder响应(选择替代方法,检查地址的拼写错误/错字等),以准备更精确的坐标以进行进一步的路线计算。