google maps apiで悪戦苦闘。

api_status

ある程度、google maps apiを用いて、施工中現場の一覧を作成したものの、geocoder.geocode関数で実施するgeocodingが10件以上となるとOVER QUERY LIMITを返す事態に遭遇。

処理間隔を空ければいいという情報もあったので、javascript内でsleepっぽい処理を実装し10秒ぐらい待機しても変わらず。どうやらjavascriptとapiの処理が非同期らしく、javascriptで待機してもjavascriptの処理が全部終わってからapi処理に移っている模様。javascriptはよくわからないので付け焼き刃の知識では何とも出来ず断念。

これは10件以上は断念して運用で対処か、と思いつつも、apiに住所を放り込んで、json形式で取得すれば、php処理で座標が取得できることが判明し、処理の遅延も含めて処理が出来た。

完成!と、行きたいところだが、geocoder.geocode関数では、不確定な住所でも、っぽい座標を返してくれたのに、json形式の返却では、不確定な住所の場合は座標を返却しない処理の模様。なんかオプションあるんだろうか。

マンション名とか付いているだけで一致しない扱いとなっており、apiに投げる住所情報からマンションを除去する処理を入れないと、そもそもテーブルのカラムにマンション用カラムがないし、UI側も、表示、修正、追加の際の処理にも手を加えないといけないし…。

という訳で、日々、趣味の世界は続きます。

しかしこれが無料なわけです。ある程度の制限はあるものの、社内でちまちま使う上では全くと言っていいほど無料の範疇。

凄いぞ、google。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です