2
0

REST APIとは

Posted at

REST APIとは

API(アプリケーション プログラム インターフェース)は、アプリケーションとデバイスの接続と通信の方法を定義する一連のルールです。
REST APIとは、REST(Representational State Transfer)の原則に基づいて設計されたAPIの事です。Webシステムを外部から利用するためのAPIです。

RESTの設計原則

1.統一されたインターフェース
ユーザーの名前やEメールアドレスなど、同じデータが1つのURI(Uniform Resource Identifier)だけに属するようにします。クライアントが必要とする可能性のあるすべての情報が含まれている必要があります。

2.クライアントとサーバーの分離
クライアント側とサーバー側は、互いに分離され独立している必要があります。クライアントはリソースを表すURIのみを知ってればよく、他の方法でサーバー側は、クライアントリクエストに関連するデータの保存を許可されてません。

3.ステートレス
REST APIはステートレスなので、各リクエストが個別で完結しており、前のリクエストとの状態を引き継ぎません。そのため、その処理に必要なすべての情報を含める必要があります。

4.キャッシュ可能
キャッシュが許可されている場合は、クライアント側またはサーバー側でリソースのキャッシュが可能である必要があります。サーバーの応答には、そのリソースがキャッシュ可能かどうかの情報が含まれてなければならない。

5.階層化システム
REST APIでは、クライアントとサーバーの間に中間システムが存在する可能性があります。そのため、クライアントとサーバーは直接通信していると想定せず、中間システムの有無に関わらず通信できるように設計する必要があります。

6.コードオンデマンド(オプション)
REST APIは通常、静的なリソース(HTML、画像、データ)を送信します。
しかし、場合によっては応答に実行可能なコードを含めることができます。その際、実行可能コードはオンデマンド(必要に応じて)で実行される必要があります。

REST APIで使われるHTTPメソッド

HTTPメソッド 概要
GET リソースの読み取りや取得に使用
POST 新しいリソースを作成するために使用
PUT 既存のリソースを更新するために使用
DELETE リソースを削除するために使用

movieをリソースとしたCRUD操作のURIとHTTPメソッドは、次のように定義できます。

URI HTTPメソッド 概要
/movies POST 映画を作成
/movies GET 映画のリストを取得
/movies/{movie_id} GET 特定の映画を取得
/movies/{movie_id} PUT 特定の映画を更新
/movies/{movie_id} DELETE 特定の映画を削除
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0