日本郵政のAPIを利用して住所を自動で入力する機能を実装した

日本郵政はAPIを公開していて、APIに接続して郵便番号を渡すとその郵便番号に関連した市区町村の情報をJSON形式で返す。この機能を利用して、フォームフィールドに住所を自動で入力することができます。

日本郵政のAPIで得られるのは、都道府県+市+町という形式なので、市と町を連結して、

  • 郵便番号
  • 都道府県
  • 市+町
  • 番地

という形にしたい。それは、以下のコードで実現できる。

            <script>
            document.addEventListener('DOMContentLoaded', function() {
                var postalCode = document.querySelector('input[name="postal_code"]');
                var prefecture = document.querySelector('input[name="prefecture"]');
                var city = document.querySelector('input[name="city"]');
                var address = document.querySelector('input[name="address"]');
                postalCode.addEventListener('blur', function() {
                    var xhr = new XMLHttpRequest();
                    xhr.open('GET', 'https://zipcloud.ibsnet.co.jp/api/search?zipcode=' + postalCode.value);
                    xhr.addEventListener('load', function() {
                        var response = JSON.parse(xhr.responseText);
                        if (response.results) {
                            var data = response.results[0];
                            prefecture.value = data.address1;
                            city.value = data.address2 + data.address3; // 市区町村と町名を結合
                            address.value = ''; // 番地は空欄に
                        }
                    });
                    xhr.send();
                });
            });
            </script>

このコードをAIで自動的に生成してくれる。なんとも凄い時代になったものだ。

そこで考える。

プログラマーに価値はあるのか?
AIの使い方を知っていて日本語の命令文が書ければ事足りる。
もちろん、プログラミングについて多少の知識は必要だが。

さらに考える。。

でも、日本人の99%はAIでアプリを作ろうと思わないだろう。
なぜならみんな本業があるし、他事で精一杯でそんなこと考える余裕はない。
ただ、考えることは、

  • 自分の仕事をもっと便利することはできないか?
  • どっかにそんなアプリ落ちてないかなぁ
  • できたら無料のがあったら良いなぁ
  • そんでもって使いやすいの

ということだろう、多分。
これが普通の人の考えることなのです。

しかし、このことをプログラマーはしばしば見誤る。
自分と同じように「みんな」AIでプログラミングを始めてアプリを作っちゃうのでは?と。

いえいえ、そんにゃことはありませぬ。
希望を持ちたまえ。AIはプログラマーの見方だ。

と、熱い思いを語る朝でした。
ではでは〜

シェアする

返信を残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

購入する
購入する