4

Google Geocoding API を使用して、サイトのさまざまな場所を検索するための緯度/経度の座標を取得しています。問題は、「ウォータールー」などのロンドンの地域 (ほとんどのユーザー ベースが存在するロンドンだけに限定されない可能性があります) では、ジオコーディング API が、URL を直接入力した場合とは異なる結果をサーバーに返すことです。私のブラウザ。これは、waterloo 用に生成された URL です。

http://maps.googleapis.com/maps/api/geocode/xml?address=waterloo,%20london,%20england&bounds=48.8,-11.2|60.9,1.9&sensor=false®ion=uk

これをブラウザに貼り付けると、ウォータールーの正しいエリアが表示されます ("Waterloo, London Borough of Lambeth, London SE1, UK")。ただし、サーバーがこの URL から結果を取得すると、ウォータールーから数マイル離れた「2C Waterloo Rd, London, Greater London NW2 7UA, UK」というアドレスが取得されます。(これも単一の結果のみを返します。)

私のサーバーは英国にあり、IP で GeoIP を実行すると、これが確認されます。Google が異なる結果をサーバーに返すのはなぜですか?

(ところで、私のサーバーは PHP5 simplexml_load_file() を使用して結果を取得しています)

** この質問が別の質問と重複しているとマークされた理由がわかりません。これが重複していると思われる質問は、私の質問に少しも答えていません。私の質問は、ビジネスとは何の関係もありません (郵便地域のみ)。私のサーバーが私の PC とは異なる方法で扱われている理由も説明していません。

4

1 に答える 1

7

地域バイアスと呼ばれるものが発生しています: https://developers.google.com/maps/documentation/geocoding/#RegionCodes

GET パラメーターを渡すregion=ukと、結果はどこでも同じになります (つまり、英国に合わせて調整されます)。

于 2012-04-24T16:54:21.660 に答える