Java学習 WebAPIとAPIの違いと(たぶん)普遍的なWebAPIの叩き方

何となくWebAPIもAPIも同じでしょう?と思っていました。
(WebAPI=APIで、他はライブラリという別の物だと思ってました)

違いが少しわかったので、不正確だとは思いますが書いてみたいと思います。

[WebAPIとAPIの違い]

まずAPIが大きな枠でその中にWebAPIがあるということ。

APIは指し示す範囲が広大なのですが、一般的にAPIというと公式の提供するライブラリなどを指している気がします。
APIとして提供されている機能は無数と言えるほどあります。

WebAPIは、HTTPリクエストとレスポンスでやり取りするAPIの1種です。
かなりの割合でjsonという軽量のデータファイルを返してきます。
主にWebサービスを提供している企業が開発していて、機能はそのWebサービスに関連するものに限られることが多いです。
(twitterAPIやぐるなびAPIなど)

[(たぶん)普遍的なAPIの叩き方]

こちらのサイト様の郵便番号検索APIを例にしようと思います。

WebAPIはHTTPリクエストを使って処理のリクエストを送るので、
「ベースURL+リクエストパラメータ」を指定すれば、サーバー側にリクエストが通ります。

リクエストパラメータにはAPIキーなどが入る場合があります。
リクエストパラメータは指定の形式で入力する必要があります。
(リンク先だとzipcode=XXXXXXXみたいに)

要件に基づいたHTTPリクエストが処理されると、レスポンスが返ってきます。
このレスポンスのレスポンスフィールドに私たちが利用できる情報が入っています。

レスポンスフィールドはそのままだと見にくいこともあるので、ほとんどのプログラミング言語の標準ライブラリに入っているjsonを整形するAPIで整形します。

おそらくこれが普遍的なWebAPIの呼び出し方ではないかと思います。

[まとめ]

WebAPIの普遍的な呼び出し方を調べてみると、意外と、
「○○の使い方(1例特化)」みたいな記事が多く、何でこれで動くの?というところで納得できなかったので、たぶんこういうことでしょうというところまで調べてまとめてみました。

色々と間違えている部分があると思いますので、詳しい方はどこかに書いて知らせてくださると非常に助かります。

この記事が気に入ったらサポートをしてみませんか?