PHP - 浏览器和file_get_contents返回结果不一致
P粉116654495
P粉116654495 2023-09-14 18:26:17
0
1
646

我正在访问Google API以获取一些地理位置。

端点看起来像这样:

https://maps.googleapis.com/maps/api/geocode/xml?address=84100+ORANGE+FR&key=apikey

如果我在Chrome浏览器中打开此链接,API将返回一些数据。

如果我使用file_gets_content或simplexml_load_file访问它,它将返回“零结果”。

经过一些测试,我发现我可以在Chrome上看到结果,因为浏览器本身设置为意大利语。如果我将其设置为英语,它将返回“零结果”,与PHP相同。

如何在PHP中获得与Chrome相同的结果?

P粉116654495
P粉116654495

全部回复(1)
P粉996763314

我实际上在这里找到了问题。

基本上,当我将Chrome设置为意大利语时,它可能重新排列了参数的顺序,返回了不同的结果。

实际的问题在于地址参数,其中城市在邮编之前。

另外,添加参数&language=it可能出于同样的原因起作用。

因此,正确的URL应该是

https://maps.googleapis.com/maps/api/geocode/xml?address=ORANGE+84100+FR&key=apikey

我花了太多时间来调试这个问题。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板