我正在向Google Maps Distance Matrix API请求获取今天下午两点之间的duration_in_traffic数据--Besiktas和Bosphorus Bridge-在伊斯坦布尔,我将出发时间设置为3月06日17:00:00 2018.它让我觉得需要5分钟,这实际上是不可能的,应该至少需要20分钟。 Google地图中的结果也不同。
这是JSON响应:
{
"destination_addresses" : [
"Ortaköy Mh., İstanbul Çevre Yolu, 34347 Beşiktaş/İstanbul, Turkey"
],
"origin_addresses" : [
"Cihannüma Mahallesi, Barbaros Blv. No:76, 34353 Beşiktaş/İstanbul, Turkey"
],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "3.1 km",
"value" : 3052
},
"duration" : {
"text" : "4 mins",
"value" : 217
},
"duration_in_traffic" : {
"text" : "5 mins",
"value" : 295
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}
Here's the Google Maps Screenshot for the specified time and destination
我不知道是什么原因引起的,但如果你能提供帮助,我将不胜感激。
答案 0 :(得分:0)
您的出发时间以毫秒而非秒为单位,这是Distance Matrix API所需的时间
https://developers.google.com/maps/documentation/distance-matrix/intro#departure-time
departure_time - 所需的出发时间。自UTC时间1970年1月1日午夜起,您可以将时间指定为秒中的整数。或者,您可以指定now的值,该值将出发时间设置为当前时间(更正为最接近的秒数)。
此外,在将出发时间转换为秒,即1520301600之后,日期实际上是2018年3月6日,0200 UTC,即当地时间早上5点,而不是下午5点。使用1520517600,相当于当地时间2018年3月8日下午5点,duration_in_traffic是18分钟:
{
"destination_addresses" : [
"Ortaköy Mh., İstanbul Çevre Yolu, 34347 Beşiktaş/İstanbul, Turkey"
],
"origin_addresses" : [
"Cihannüma Mahallesi, Barbaros Blv. No:76, 34353 Beşiktaş/İstanbul, Turkey"
],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "3.1 km",
"value" : 3052
},
"duration" : {
"text" : "4 mins",
"value" : 217
},
"duration_in_traffic" : {
"text" : "18 mins",
"value" : 1081
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}