Archive for 8月 2016

Webサービス「避難施設マップ」を再開してみた

国土交通省が公開している国土数値情報のデータを利用して、だいぶ前にWebサービス「避難施設マップ」( https://hinan-map.info/ )を作ったけれど、出来上がってしまったら満足してしまい、その後は放置状態だった。9月1日防災の日が近づいてきて、そういえばあんなの作ったよなぁ、と思って久しぶりにアクセスしてみると、色々と不具合が出ていてまともに動作しない。調べてみると Google Maps の API 利用規定が変わったことなどが原因みたい。利用者はいないだろうと思いつつ、この機会にメンテナンスすることにした。

Screenshot_20160901-105006

実際に修正を試みたのは次の3点。ただし最後のひとつは実現できなかったのだが、そのことは後述。

Google Maps アクセス用のAPIキー設定

このサービスの公開時、Google Maps を利用する際にAPIキーの設定は任意だった。ところが2016年6月から、このAPIキー設定が必須となった模様。そのため地図表示がまったく出来ない状態になっていた。そこで Google API コンソールから新たにAPIキーを取得し、コードに埋め込んだら再び地図を表示するようになった。

現在の Google API は、利用サービスがかなり細かく分類されていて、必要なサービスを事前に有効化指定する必要がある。今回は地図表示用の API として Google Maps JavaScript API を使ったのだが、この API だけでは2点間のルート表示をすることが出来ず、さらに Google Maps Directions API も有効にする必要があった。これによって避難施設マップにおける現在地から避難施設への経路表示も復活できた。

SSLを導入してHTTPSに対応

避難施設マップでは現在地を表示する機能があり、HTML5 の Geolocation API を利用している。サービス開始当初は問題なく現在地を取得していたのだが、なぜか現在地の取得が必ず失敗するようになっていた。調べてみた結果、Chrome ブラウザのバージョンが 50 以降の場合、セキュリティ強化目的で http 接続での Geolocation API が廃止されているとのこと。

参考にした記事(@IT:「Chromeブラウザで現在地情報を正しく取得できない場合の原因と対策」)によると、仕様変更したブラウザはいまのところ少数派のようだが、他のブラウザもいずれはこのような対応が予想されるので、ここは素直にサーバ証明書を導入して避難施設マップサービスへのアクセスを完全に https 化した。サーバ証明書は無料で利用できる StartSSL から入手した。ここのサーバ証明書は簡単に入手できるので、開発用途などに重宝している。

避難施設データの更新

このような修正作業をしたついでに肝心の避難施設の元データも最新のものに更新したいと思った。避難施設マップで使っている国土交通省の国土数値情報データは平成24年度(2012年度)のものだったので、さすがに更新されているだろうと思ったのだが、国交省のWebサイトには依然として同じ年度のデータが公開されていた。来年度はこのデータ公開からちょうど5年目になるので、もしかしたら更新されるかもしれない。しばらくは国交省サイトのウォッチを続けようと思う。

 

避難施設マップは、すでにスマートホンのアプリとして多くのものが利用可能だったり、あるいは多くの自治体がそれぞれの地域限定で避難施設の情報をWebページで公開してもいるので、いまさら自前で避難施設マップを公開しても意味ないかとも思ったが、まあこういったものがたくさんあれば、万一のときのバックアップ程度にはなるかもしれないので、この後もしばらくは公開しておくことにする。この避難施設マップは北海道から沖縄までの全都道府県のデータを古いながらも網羅しているので、土地勘の無い場所で避難施設を探さなければならないような事態に遭遇したときなどは、多少お役に立てるかもしれない。

 

Webサービス名:避難施設マップ
利用方法:スマートホン、タブレット、PC等のWebブラウザで利用可能
URL: https://hinan-map.info/