REST API について噛み砕いた説明をまとめてみた。
(Chat GPT)
REST(Representational State Transfer)APIは、
ウェブアプリケーションやサービス間で
データのやり取りを行うための一連の規則や原則のこと。
このアーキテクチャスタイルは、インターネット上でのリソース
(データやオブジェクト)の管理を
簡単かつ効率的に行うために設計されている。
REST APIとは、インターネット上で情報やデータを
やり取りするための「ルールのセット」のこと。ウェブサイトやアプリが、サーバー
(データを保管している大きなコンピューター)から
情報を取得したり、情報を送ったりするときにこのルールを使用する。
(Chat GPT)
RESTの主要な原則
クライアント-サーバー構造:
システムをクライアントとサーバーに分離して、
それぞれが独立して開発・拡張できるようにする。
「クライアント」と「サーバー」を分ける考え方のこと。
クライアントはユーザーが使っているアプリやウェブサイトのこと。サーバーはデータを保管している場所。
この分離によって、それぞれが別々に改良や拡張ができる。
(Chat GPT)
ステートレス性:
各リクエストは独立しており、
過去のリクエストの情報を保持しない。
それぞれのデータ交換(リクエスト)は、
他のリクエストとは独立しているという考え方である。つまり、サーバーは過去に何をしたかを覚えていないので、
毎回必要な情報を新たに送る必要がある。
(Chat GPT)
キャッシュ可能性:
リソースはキャッシュされ、パフォーマンスを向上させることができる。
サーバーから送られたデータを一時的に保存(キャッシュ)して、
同じデータを再度要求する時には速く提供できるようにする仕組みのこと。
(Chat GPT)
一様インターフェース:
シンプルで統一されたインターフェースを
通じてリソースにアクセスできる。
どのデータにアクセスするにしても、使う方法
(インターフェース)は同じというルールのこと。
これにより、開発を容易に進めることができる。
(Chat GPT)
レイヤードシステム:
複数のレイヤー(層)を介してクライアントと
サーバーが通信することができます。
クライアントとサーバーの間には複数の「層」があると考えることで、
セキュリティの強化や負荷分散などが可能となる。
(Chat GPT)
HTTPプロトコルの使用:
REST APIはHTTPリクエスト
(GET、POST、PUT、DELETEなど)を
使用してリソースを操作できる。
REST APIは、ウェブページを見る時に使うのと
同じ方法(HTTP)でデータをやり取りする。HTTPには「GET」、「POST」、「PUT」、「DELETE」といった
いくつかの基本的な操作があり、それぞれが特定の動作をする。「GET」はデータを取得する時に使う。
「POST」は新しいデータを追加する時に使う。
「PUT」は既存のデータを更新するときに使う。
「DELETE」はデータを削除するときに使う。