NEWS

【kintoneアプリ】Google Map APIを使ってリバースジオコーディングをしてみた!

2019.11.27
Jumpei Yamamoto

kintoneアプリ開発を行っていて、緯度・経度から住所の情報に変換したいという要望があり、Google MAP APIを使ってみたので、やり方をまとめていきたいと思います。

実装する機能の概要

今回はkintoneアプリに下記の機能をJavaScriptで実装していきます。

  • kintoneアプリには緯度・経度・住所が登録できるフィールドを設置する
  • プログラムはレコードの登録または保存時に発火する
  •  Google MAP APIを用いて、緯度・経度から住所に変換する
  •  住所情報を該当レコードに登録する(PUT)

 


リバースジオコーディングのサンプルコード

早速ですが、こちらがサンプル。

 


Google MAP APIのAPI Keyを設定する

まずはGoogle MAP APIのAPI Keyを取得しましょう。こちらの手順でAPI Keyを取得できるので、下記の通り設定してください。

 


緯度・経度から住所を取得する

上記のサンプルでは、レコード保存時に緯度・経度情報を取得し、それをGoogle MAP APIに渡してあげて、住所に変換しています。

Google MAP APIを叩くと、下記のようなレスポンスが返ってきます。国名から番地までフルの住所を取得したい場合は、”formatted_addresss”を参照するのが良いでしょう。

その他レスポンスの詳細はこちらに記載されています。

住所が取得できたら、あとはレコードに登録するだけです。ただし、住所を取得しているのは非同期処理になるので、サンプルではcallbackを用いて該当レコードにPUTしています。

 


Google Map APIを使う場合の注意点

Google Map APIは非常に便利で使いやすいのですが、唯一の弱点は利用回数に制限があることです。それも、1日に2,500回までなので、多くのデータの取扱いがある場合は割とすぐに制限を超えてしまうでしょう。

その場合に便利なのが、Yahoo APIです。こちらは利用制限が50,000回/日になるので、既にある緯度・経度データを一気に処理したい場合は、こちらを使うのが良いです。

Yahoo APIを用いたリバースジオコーディングについては、次回執筆します!

無料相談はこちら
TwitterFacebook

NEWS