- OpenStreetMap の Nominatim に対応したクライアントから東京大学空間情報科学研究センター(CSIS)が提供する「シンプルジオコーディング実験」にアクセスするために、サーバーサイドでインタフェースを変換します。
- 以下のような流れになります。
クライアント ⇒ (?q=住所) ⇒ GeocoderProxy ⇒ (?addr=住所) ⇒ CSIS ⇒ (XML) ⇒ GeocoderProxy ⇒ (JSON) ⇒ クライアント
- Leafletのプラグイン Leaflet Control Geocoder で動作確認しました。
- 35.658099, 139.741357 という形式で緯度経度が渡されたときは、ジオコーダを呼び出さずにそのままの値を返します。
- search.php と .htaccess をWebサーバに設置します。.htaccess は、拡張子なしで search.php をアクセス可能にするためのものです。
- 利用する際は、CSISシンプルジオコーディング実験の参加規約に従って下さい。
- L.Control.geocoder の geocoder オプションで L.Control.Geocoder.Nominatim を指定し、その serviceUrl オプションで GeocoderProxy を設置したサーバーを指定します。
L.Control.geocoder({
geocoder: new L.Control.Geocoder.Nominatim({
serviceUrl: /* URL of the service */
}),
- 月待ビンゴ攻略マップ で利用しています。