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 のことで質問や疑問があれば、是非マルティスープにお問い合わせ下さい。

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

2018.05.10

Google Maps JavaScript API のリリースバージョンが 3・・・

みんさん、こんにちは!

Google Maps JavaScript API のアップデート情報です。

2018年5月15日頃、G・・・

続きを読む

2018.08.07

Maps JavaScript API のリリースバージョンが 3.33 に変更・・・

みなさん、こんにちは。

2018年8月14日頃、Maps JavaScript API のリリースバージョンが 3.32 から 3.33 に変・・・

続きを読む

2017.10.05

Googleマップを印刷しようとすると表示されない!?

みなさん、こんにちは!

以前、Google Maps APIs プレミアムプランをご購入いただいたお客さまから、以下のような問い合わせがありま・・・

続きを読む

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

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

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