-1

我正在为某些项目工作收集几个地点的ETA。我不同的时间点时得到不同的时间段,但它返回相同的结果无法使用Google Maps API获取正确的ETA

一个案例

来源:英亩俱乐部,411-B,禾木卡拉尼玛格,信德人协会,金布尔,孟买,马哈拉施特拉邦 目的地:孟买总站,贾特拉帕蒂希瓦吉终点站区,孟买,马哈拉施特拉 总是返回1702秒。

下面是API调用我提出: https://maps.googleapis.com/maps/api/distancematrix/json?origins=Acres%20Club,%20411-B,%20Hemu%20Kalani%20Marg,%20Sindhi%20Society,%20Chembur,%20Mumbai,%20Maharashtra&destinations=Chhatrapati%20Shivaji%20Terminus,%20Chhatrapati%20Shivaji%20Terminus%20Area,%20Mumbai,%20Maharashtra&key=

让我知道如果我错过什么。感谢Aadvance。

+0

为什么你认为这个数字会在不同的时间发生变化? (这不是一个很长的旅程) – geocodezip

+0

@geocodezip即使距离很近,这条路线也应该显示不同的输出。您正在询问为什么在高峰时段v/s在夜间交通状况明显不同的情况下,您从A点行驶到B点时,为什么要更改号码。 除此之外,Google地图显示不同的时间,但其API不是。 –

回答

3

如果我理解正确,您有兴趣获得考虑当前交通状况的持续时间。请注意,有交通状况的持续时间需要在您的请求中指定出发时间。

看一看读取的文档:

DEPARTURE_TIME - 离别的需要的时间。您可以将时间指定为1970年1月1日午夜以来的整数(以秒为单位)。或者,您可以指定现在值,该值将出发时间设置为当前时间(正确到最近的秒)。

对于驾驶旅行模式的请求:您可以指定departure_time来接收考虑到交通状况的路线和行程持续时间(响应字段:duration_in_traffic)。此选项仅在请求中包含有效的API密钥或有效的Google Maps API Premium计划客户端ID和签名时可用。出发时间必须设置为当前时间或将来的某个时间。它不可能在过去。

https://developers.google.com/maps/documentation/distance-matrix/intro#DistanceMatrixRequests

我建议你改变请求

https://maps.googleapis.com/maps/api/distancematrix/json?origins=Acres%20Club%2C%20411-B%2C%20Hemu%20Kalani%20Marg%2C%20Sindhi%20Society%2C%20Chembur%2C%20Mumbai%2C%20Maharashtra&destinations=Chhatrapati%20Shivaji%20Terminus%2C%20Chhatrapati%20Shivaji%20Terminus%20Area%2C%20Mumbai&departure_time=now&traffic_model=best_guess&key=YOUR_API_KEY

在这种情况下,你的回应,你会看到类似

"rows":[ 
{ 
    "elements":[ 
    { 
     "distance":{ 
     "text":"16.2 km", 
     "value":16206 
     }, 
     "duration":{ 
     "text":"28 mins", 
     "value":1702 
     }, 
     "duration_in_traffic":{ 
     "text":"45 mins", 
     "value":2715 
     }, 
     "status":"OK" 
    } 
    ] 
} 
], 

。其中duration_in_traffic显示考虑到当前交通状况的持续时间,并且duration是典型的平均持续时间。

希望这会有所帮助!

相关问题