此处为 REST API 路线
Directions REST API here
我正在尝试使用 此处 的路由 REST API,但 API 的响应对我来说意义不大。
当我调用这个时 URL
https://route.cit.api.here.com/routing/7.2/calculateroute.json?waypoint0=51.5141%2C-0.0999&waypoint1=51.5081%2C-0.0985&mode=fastest%3Bpedestrian&app_id=DemoAppId01082013GAL&app_code=A...
我收到的回复类似于
{
"response": {
"metaInfo": {
"timestamp": "2016-06-06T17:40:58Z",
"mapVersion": "8.30.62.155",
"moduleVersion": "7.2.68.0-14232",
"interfaceVersion": "2.6.24"
},
"route": [{
"waypoint": [{
"linkId": "-25305763",
"mappedPosition": {
"latitude": 51.5140062,
"longitude": -0.0998158
},
"originalPosition": {
"latitude": 51.5141,
"longitude": -0.0999
},
"type": "stopOver",
"spot": 0.6708861,
"sideOfStreet": "right",
"mappedRoadName": "St Paul's Churchyard",
"label": "St Paul's Churchyard",
"shapeIndex": 0
}, {
"linkId": "-1113519286",
"mappedPosition": {
"latitude": 51.5082735,
"longitude": -0.098473
},
"originalPosition": {
"latitude": 51.5081,
"longitude": -0.0985
},...
这看起来不像我可以在 leaflet
地图上显示的东西(即 json 中的 polyline
或类似的东西)。
我该如何解释?我如何获得可以在地图上显示的线?
从该数据结构中提取经纬度对并构建 L.Polyline
的实例非常简单:
var latlngs = [];
for (var i in json.response.route[0].waypoint) {
var p = json.response.route[0].waypoint[i].mappedPosition;
latlngs.push(L.latlng(p.latitude, p.longitude));
}
var line = L.polyline( latlngs );
我正在尝试使用 此处 的路由 REST API,但 API 的响应对我来说意义不大。
当我调用这个时 URL
https://route.cit.api.here.com/routing/7.2/calculateroute.json?waypoint0=51.5141%2C-0.0999&waypoint1=51.5081%2C-0.0985&mode=fastest%3Bpedestrian&app_id=DemoAppId01082013GAL&app_code=A...
我收到的回复类似于
{
"response": {
"metaInfo": {
"timestamp": "2016-06-06T17:40:58Z",
"mapVersion": "8.30.62.155",
"moduleVersion": "7.2.68.0-14232",
"interfaceVersion": "2.6.24"
},
"route": [{
"waypoint": [{
"linkId": "-25305763",
"mappedPosition": {
"latitude": 51.5140062,
"longitude": -0.0998158
},
"originalPosition": {
"latitude": 51.5141,
"longitude": -0.0999
},
"type": "stopOver",
"spot": 0.6708861,
"sideOfStreet": "right",
"mappedRoadName": "St Paul's Churchyard",
"label": "St Paul's Churchyard",
"shapeIndex": 0
}, {
"linkId": "-1113519286",
"mappedPosition": {
"latitude": 51.5082735,
"longitude": -0.098473
},
"originalPosition": {
"latitude": 51.5081,
"longitude": -0.0985
},...
这看起来不像我可以在 leaflet
地图上显示的东西(即 json 中的 polyline
或类似的东西)。
我该如何解释?我如何获得可以在地图上显示的线?
从该数据结构中提取经纬度对并构建 L.Polyline
的实例非常简单:
var latlngs = [];
for (var i in json.response.route[0].waypoint) {
var p = json.response.route[0].waypoint[i].mappedPosition;
latlngs.push(L.latlng(p.latitude, p.longitude));
}
var line = L.polyline( latlngs );