📘

雰囲気で理解していたAPIとは

に公開

what

  • APIについて調べたことをまとめる
  • 自分は雰囲気でAPIを触っている

API(Application Programming Interfice)とは

「あるソフトウェアの機能やデータを、別のソフトウェアから利用するための窓口や仕組み」のこと。

身近な例で言えば、電力会社とコンセントに例えられる。

実世界の例として、あなたの家、アパートや他の住処にある電気のコンセントについて考えて下さい。あなたの家で機器を使いたい時には、電源コードのプラグをコンセントに差し込めば事足ります。電源に直接結線したりしないでしょう — そんなのは非効率ですし、あなたが電気工事士でなければ、やってみるには難しいし危険です。

APIはどのように機能しているか?

基本的にはインターネットのHTTP/HTTPSプロトコルを使って通信をしている。

リクエスト(要求)

  • APIを利用したい側が、APIを提供する側に対して「この機能を使いたい」「このデータをほしい」というリクエストを出す
  • このリクエストはどの機能を使うか、どんな情報が必要かが含まれる

レスポンス(応答)

  • APIを提供するサーバーは、リクエストを受け取るとその要求を処理し、結果を返す
  • レスポンスは通常、JSONやXML形式等が利用される

Web APIとは

webベースのアプリケーションやサービスの間での通信を可能にするAPI

インターネットを介してデータを交換し、プログラム間で情報を共有することが主な目的

Web APIの仕組み

1. リクエストの発行

APIの使用者が、特定のデータやサービスの要求を行う。

この要求は「リクエスト」と呼ばれ、通常HPPTプロトコルを利用して送信される

2. APIへのリクエスト転送

リクエストはインターネットを介してAPIの提供元(サーバー側)に送信される。

リクエストはAPIの特定のエンドポイントに対して行われ、必要な情報が含まれている。

3. 情報の処理と要約

APIの提供者はリクエストを受取、その内容に基づいて必要な情報を処理・集約する。

4. レスポンスの生成と送信

情報が処理された後、APIはその結果をクライアントに返す。

この応答は「レスポンス」と呼ばれ、通常JSONやXMLでエンコードされる。

Web APIの種類

REST API

  • 最も一般的なWeb API
  • シンプルでスケーラブルなアーキテクチャを持ち、リソース指向

SOAP API

  • プロトコルの厳密なセットに基づいたより正式なAPI
  • XMLベースのメッセージフォーマットを使用し、セキュリティやトランザクション管理が強化されている

WebSocket API

  • リアルタイムの通信をサポートするAPI
  • 双方向の通信チャンネルを提供し、Webアプリケーションでのリアルタイムデータのストリーミングに適している

参考

https://developer.mozilla.org/ja/docs/Glossary/API
https://developer.mozilla.org/ja/docs/Learn_web_development/Extensions/Client-side_APIs/Introduction#api_って何

Discussion