MULTISOUP

MULTISOUP

MULTISOUP

Staff Blog

Introduction example

2016.06.27

Geocording APIの微妙な仕様変更?

20160627

昨日、お客さまから緯度経度から逆ジオコードした結果の住所がおかしいという連絡をもらいました。

 

「市区町村名までしか表示しない」

 

期待する結果: 東京都千代田区神田錦町3-11

取得した結果: 東京都千代田区

 

使用しているAPIは、Google Maps Geocording API です。

仕様が変更されたどうか、調査を開始しました。

ブラウザ上でJavaScriptをステップ実行しながら見ていき、ジオコードした結果のオブジェクトを

参照しましたが、問題なく変換しているように見えます。

 

1行ずつステップ実行していると、結果を取得後、 if 文で分岐処理を行っている箇所がありました。

その処理は、ジオコード結果のタイプを参照し、取得した住所を変数に代入する内容です。

要は、変換結果レベルの一番高いものを取得することが目的の処理です。

そこで気付いたのが、今までと異なる結果が返ってきていることです。

 

期待する結果: types: {“sublocality_level_5”}

取得した結果: types: {“political”, “sublocality”, “sublocality_level_5”}

 

今までは、“sublocality_level_5”という結果が配列の先頭にあったはずです。

というか、1個しか無かったような気がします。今回見たところ、配列の一番最後にあります。

ロジック的に、配列の1番目を取得するようになっていたため、期待する結果を取得する

事ができなかったことが原因だったようです。

 

そもそも types は配列で定義されており、複数の結果が返ってきたとしても文句は言えません。

今回のように Google Maps API は、微妙な仕様変更?が行われることがあります。

今回のケースで言えば、プログラムが悪いと言えなくもありませんが、社内の人に聞いたところ、

何人か同じようなロジックを組んでいる人がいました。

 

みなさんもお気をつけください!

 

Google Maps のことで質問や疑問があれば、是非マルティスープにお問い合わせ下さい。

【関連記事】こんな記事も読まれています

2016.10.11

インバウンド対策! 地図各社の多言語対応比較

みなさん、こんにちは。

 

先日ホームページを見たというお客様より電話で問い合わせがありました。

 ・・・

続きを読む

2018.01.30

Google Maps APIs : 住所コンポーネントタイプの変更

みなさん、こんにちは!今日は Google Maps APIs の住所コンポーネントタイプの変更に関する大切なお知らせです。プレミアムプランユーザーのみな・・・

続きを読む

2016.10.13

Google Maps が表示されなくなっちゃったよ...? という人へ

「あれれ?サイトのグーグルマップが表示されなくなっちゃった。。」

 

という人いるんじゃないでしょうか?

・・・

続きを読む

 - Google Maps APIs, Google Maps Geocoding API, Google Maps JavaScript API, サポート

お問い合わせお見積もりから開発のご相談まで、お気軽にお問い合わせください。

Google Maps for Work™に関するご質問やお見積りは、
マルティスープまでお気軽にお問い合わせください03-3518-9013 (受付時間:平日 9:00−18:00)