2017-05-11 15 views
-1

私が持っているのは、通りの番号+通りの名前と郵便番号(米国内の場合)がある場合に問題が発生しています。以下のようなURLパラメータを使用しGoogleマップのコンポーネントを使用したAPIリクエスト

address=1234+street+rd%2C12345%2Cunited+states 

は常にサブユニットまたは何かのように、通りの一部として< 12345>を解釈しているようです。

address=1234+street+rd%2Cunited+states&components=postal_code:12345 

のようなコンポーネントパラメータを使用すると、正しい郵便番号が見つかるでしょうが、通りの番号や名前のような特定の場所の住所情報は返されません。

また、ルートコンポーネントを追加して通りの名前を指定すると、完全な住所情報が返されます。私は地域のコンポーネントを使用する場合は同様に、その後、完全な情報が返されます。

address=1234+street+rd&components=locality:city+land|postal_code:12345 
address=1234+street+rd&components=route:street+rd|postal_code:12345 

問題は、私はコンポーネントを取得するために、完全なアドレス応答に頼っていますので、アドレスを解析するためにジオコーダを使用しています。この特定のケースでは、ユーザーが郵便番号とストリート情報のみを入力したと仮定して、地域を含むオプションを使用しないでください(2番目のマップコールを使用せずに)。

誰かが起こりうる問題についていくつかの光を当てることができますか?私は走っているか、おそらくストリート番号、通り名、郵便番号、国がわかっているマップAPI呼び出しを実行する方法は?

答えて

1

ジオコーディングAPIのドキュメント以下の言葉:

成分フィルタを含むクエリのみがフィルタに一致するジオコーディングの結果を返します。一致するものが見つからない場合、ジオコーダーはフィルター自体と一致する結果を返します。

https://developers.google.com/maps/documentation/geocoding/intro#ComponentFiltering

address=1234+street+rd%2Cunited+states&components=postal_code:12345は、郵便番号を設立場合は、アドレスは、Googleのデータベースから欠落しているので、だから、それは可能性があります。ここで説明するように

あなたは不足しているアドレスを報告するオプションがあります:

https://support.google.com/maps/answer/3094045?hl=en&ref_topic=3093612

ホープ、このことができます!

+0

残念ながら、これはapiのバグだと思います。私がテストしているアドレスは、ストリート情報だけを入力した場合でも広い検索で表示されません。それは同じストリート情報で3つの結果を返しますが、私の特定のアドレスは返しません。 –

関連する問題