【发布时间】:2016-09-29 17:57:47
【问题描述】:
我正在调用方向 API,并且在一台服务器上(以前可以正常工作),我得到了零结果返回。我在本地有相同的代码,结果返回没有问题。如果我获取代码正在调用的 URL 并在浏览器中手动访问它,我也会得到预期的结果。我很困惑。
出于隐私考虑,我更改了地址。
$origin = urlencode('123 Fake St., London, ON, A0A 0A0');
$destination = urlencode('A0A 0A0');
// key removed for privacy
$url = 'https://maps.googleapis.com/maps/api/directions/xml?origin='.$start.'&destination='.$finish.'&key=xxxx';
if($data = file_get_contents($url)) {
// call is made without issue, but ZERO RESULTS is returned (only on one server).
$xml = new SimpleXMLElement($data);
// do stuff
}
在相关服务器上启用了 SSL。
直到今天,这在任何地方都有效。
【问题讨论】:
-
你确定你没有达到一些配额吗?您是在 Google App Engine 上运行它吗?您可以查看您是否已达到当天的配额。当您说零结果时,您是指空数组响应
[]还是空服务器响应? -
这也是我最初的想法,但如果您达到当天的配额,Google 似乎会返回 OVER_QUERY_LIMIT。 file_get_contents($url) 的实际响应是 NOT_FOUND ZERO_RESULTS ZERO_RESULTS
标签: php google-maps directions