PHP - 瀏覽器和file_get_contents回傳結果不一致
P粉116654495
P粉116654495 2023-09-14 18:26:17

我正在訪問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

我花了太多時間來調試這個問題。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!