本ブログの対象読者
- APIという言葉を何となく聞いたことがあるけど実装はしたことがない
- APIの理解に対して漠然とした不安を覚えている方
APIって最初の頃はなんかイメージがふわふわしてるよねって話
APIと聞くと皆さんはどんなことをイメージするでしょうか?
まずAPIについてWikipediaで調べてみると
“アプリケーションプログラミングインタフェース(API、英: application programming interface)とは、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様である。”「引用:Wikipedia」
という感じで説明されています。
当然ですが、APIについてまだ学習したことのない方がこの説明をみても「???」ってなること間違いないと思います。
そこで今回はAPIを叩くという行為は実はインターネットで何か検索をしたことがある人は絶対にしたことがあるよということをお話した上でその仕組みについて解説いたします!
ブラウザでURLを叩くということはつまり…
みなさんはおそらく普段当然のように「スマートフォン、タブレット、パソコン」などでネット検索を行っていると思います。その際に使っているアプリケーションはおそらく「Google Chrome」や「Safari」と呼ばれるブラウザを利用しているのではないでしょうか?
ここでは「パソコン」で「Google Chrome」を扱うと仮定して解説していきます。
初期ページの画面上部、もしくは画面真ん中上寄りに存在する検索バーで「りんご 品種 おすすめ」みたいな感じで普段検索を行っていると思います。
そして検索を行うと下記の画像のようなページに遷移すると思います。
このページでは「りんご 品種 おすすめ」の三単語で検索した結果、返ってきたWebページの一覧を表示してくれています。
では、一番上に出てきたWebページのリンクをクリックしてみます。すると該当のページが画面に表示されると思います。
ここまでで「検索結果一覧を表示した後にWebページのリンクをクリックする」という行いをしました。実は「Webページをクリックする」という行為そのものが「APIを叩く」という行為に深く関りがあります。
上記の画像で一番上のWebページのリンクが「https://weathernews.jp/s/topics/201912/020175/」という感じになっています。実はWebページのリンクをクリックした際にこんな通信が行われていたということがブラウザの検証ツールで分かります。
ここで「リクエストメソッド」という欄に注目してください。こちらが「GET」になっています。
つまり、「ブラウザ上で検索結果のリンクを叩く」という行為は「topicAPIに対してGETメソッドでリクエストを投げている」ことと同じ意味になります。
皆様は知らず知らずのうちに「APIを叩く」という行為を実践していたことになりますね。
リクエストメソッドの種類
先ほど「リクエストメソッド」という単語が出てきたのでこちらを軽く説明していきます。
リクエストメソッドとはAPIを叩く際に指定する項目で大まかに分別すると「POST」、「GET」、「PUT」、「DELETE」の4種類があります。
それぞれ順番に「作成」、「取得」、「更新」、「削除」の意味合いがあります。
ブラウザでURLを叩くという行為は「ページを取得」するために行うので「GET」メソッドが該当しますね。
最後に
初めは誰でもAPIって聞くと「ナニソレオイシイノ」みたいな感じになってしまいがちです。。。
少しでも本ブログが「API理解」または「API恐怖症の克服」の助けになれば幸いです!