当前位置:  开发笔记 > 编程语言 > 正文

Google方向API的旅行时间与直播谷歌地图不同

如何解决《Google方向API的旅行时间与直播谷歌地图不同》经验,为你挑选了1个好方法。

我在我的项目中使用谷歌方向API现在我还需要两个地方之间的估计旅行时间,包括交通.所以我正在通过出发时间:Thursday 07-January-2016 time: 14:10 PM ( 1452175200 )根据谷歌方向API文档.

查看实时谷歌地图和谷歌方向API之间的差异,并建议我做错了什么.

Live google map response: (Thursday 07-January-2016 time: 14:10 PM )

https://www.google.com/maps/dir/Los+Angeles+International+Airport,+1+World+Way,+Los+Angeles,+CA+90045,+United+States/Beverly+Hills,+CA/@34.0077875,-118.4795875,12z/data=!3m1!4b1!4m17!4m16!1m5!1m1!1s0x80c2b0d213b24fb5:0x77a87b57698badf1!2m2!1d-118.40853!2d33.9415889!1m5!1m1!1s0x80c2bc04d6d147ab:0xd6c7c379fd081ed1!2m2!1d-118.4003563!2d34.0736204!2m3!6e0!7e2!8j1452175200

typically 28 min - 1 h 15 min

typically 35 min - 1 h 10 min

02:14 PM to 03:28 PM 1 h 14 min

****************************

Google direction API:

//Source address
$a = 'Los Angeles International Airport, 1 World Way, Los Angeles, CA 90045, United States'; 
//Destination address
$b = 'Beverly Wilshire, Beverly Hills (A Four Seasons Hotel), 9500 Wilshire Boulevard, Beverly Hills, CA 90212, United
        States';

//Pass source and destination address in google map API for PESSIMISTIC
$url = 'https://maps.googleapis.com/maps/api/directions/xml?origin='. urlencode($a).'&destination='. urlencode($b).'&departure_time=1452175200&mode=driving&traffic_model=pessimistic&key=AIzaSyC7h7m5bRs-BZwk0XTXEQTB74dZujeLzZs';
//output:  duration_in_traffic =  38 mins

//Pass source and destination address in google map API for OPTIMISTIC
$url = 'https://maps.googleapis.com/maps/api/directions/xml?origin='. urlencode($a).'&destination='. urlencode($b).'&departure_time=1452175200&mode=driving&traffic_model=optimistic&key=AIzaSyC7h7m5bRs-BZwk0XTXEQTB74dZujeLzZs';
//output:  duration_in_traffic = 27 mins

//Pass source and destination address in google map API for BEST_GUESS
$url = 'https://maps.googleapis.com/maps/api/directions/xml?origin='. urlencode($a).'&destination='. urlencode($b).'&departure_time=1452175200&mode=driving&traffic_model=best_guess&key=AIzaSyC7h7m5bRs-BZwk0XTXEQTB74dZujeLzZs';
//output:  duration_in_traffic = 30 mins

两个响应必须相同或近似,但在这里我们可以看到巨大的差异.谁能建议我?



1> jatinderjit..:

时区复杂性

API采用UTC中的departure_time.

而且,当选择"离开时间"(可能是目的地,选择"到达时间")时,实时Google地图会显示原点的时区.

错误来源

您的假设是实时Google地图时间是IST.

您在2016年1月7日14:10 PM的实时谷歌地图回复实际上意味着洛杉矶时间下午2:10,这意味着2016年1月7日星期四,22:00:00 UTC(以及departure_time = 1452204600).

结果验证

2016年1月7日下午2:10的实时Google地图结果:

通常28分钟 - 1小时5分钟

通常35分钟 - 1小时

通常为30分钟 - 1小时5分钟

从API获得相应时间的结果(departure_time = 1452204600):

best_guess:39分钟

悲观:1小时1分钟

乐观:28分钟

PS:要获得与您的API结果相对应的实时地图结果,请选择'Depart at'= 6:00 AM.

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有