2017-05-12 20 views
1

ローカルとサーバーの両方で2回のコール(https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Singapore&key=MYAPIKEY)を行った。しかし、その反応は異なって見えます。Google Maps WebサービスAPIが別の場所IDを返す

サーバー

{u'terms': [{u'value': u'Singapore', u'offset': 0}], u'description': u'Singapore', u'reference': u'CjQhAAAAqQkHLg3DEkoYCh6lVEJiqKveU1CMNkbK_6qQIcEZFtxd_NxVYVIbb1m2-koDTuBtEhDkB8K6HUla_TOyBQQDKAR3GhQ6-NKJG7K_w2XgfUtKuqTEFCR70A', u'structured_formatting': {u'main_text_matched_substrings': [{u'length': 9, u'offset': 0}], u'main_text': u'Singapore'}, u'matched_substrings': [{u'length': 9, u'offset': 0}], u'place_id': u'ChIJdZOLiiMR2jERxPWrUs9peIg', u'id': u'40c4b38e02b2cbbc038a8f25974c482dd9ee466f', u'types': [u'country', u'political', u'geocode']} 

ローカル

{u'terms': [{u'value': u'Singapore', u'offset': 0}], u'description': u'Singapore', u'reference': u'CjQhAAAAW1UCg8Y9NAxV8rFkCcTutkBeufvz4rT2DiqCHwMgefWa_xKk5bwy6XZeegDpgfCSEhAzfOhzl7AfxFQvKnPKZ9FaGhSA7Obi7wXY-NGXB6g6lZO66GrQ-w', u'structured_formatting': {u'main_text_matched_substrings': [{u'length': 9, u'offset': 0}], u'main_text': u'Singapore'}, u'matched_substrings': [{u'length': 9, u'offset': 0}], u'place_id': u'ChIJyY4rtGcX2jERIKTarqz3AAQ', u'id': u'de9886df6eae88551e41600d0927dc8eb9f2c6ca', u'types': [u'locality', u'political', u'geocode']} 

以上の結果、異なるlookesIDとは。何らかの理由?? そして、サーバーとローカルの両方で同じ結果を得るソリューション。

答えて

0

興味深い質問です。

私は、何が起こっているのか、どのようにこれを解決できるのかを理解するのを助けます。

サーバーからの応答は、種類が[u'country', u'political', u'geocode']であるため、国の場所IDを返します。ローカルマシンからの応答は都市の場所IDを返します。タイプは[u'locality', u'political', u'geocode']です。

私はあなたのローカルマシンとあなたのサーバーの地理的な場所が異なると仮定します。プレース・オートコンプリートは、ビューポートを明示的に指定せず、IPアドレスの地理的位置に応じて結果を偏らせない場合に、リクエストを送信したマシンのパブリックIPアドレスも考慮に入れます。たとえば、誰かがシンガポールを米国から検索した場合、その国は一般的にその国を意味するため、米国では国の検索がより一般的であり、結果は国であると示唆されています。逆に、地元の人々はおそらく国よりも頻繁に都市を検索するので、シンガポールでは都市の結果がより顕著になります。

問題を解決して同じ結果を得るには、リクエストにlocationパラメータとradiusパラメータを適用するビューポートを指定する必要があります。

あなたは私のスクリーンショットenter image description here

に示すように、その結​​果は地域で今まで半径を大きく表示されますのは、50キロ

https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Singapore&location=1.395126%2C103.831787&radius=50000&key=YOUR_API_KEY

に1.395126,103.831787と半径にビューポートの中心を設定してみましょう500キロ

https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Singapore&location=1.395126%2C103.831787&radius=500000&key=YOUR_API_KEY

あなたの意志のee、これより大きな地域では、現在好ましい結果が国になっていますenter image description here

これは疑問を説明してくれることを願っています。

関連する問題