REST APIについて、調べてみた。
REST APIとは
REST(Representational State Transfer)API:
REST APIとは、
Webシステムを外部から利用するためのプログラムの呼び出し規約(API)の種類の一つで、
「REST」(レスト)と呼ばれる設計原則に従って策定されたもの。
RESTそのものは適用範囲の広い抽象的なモデルだが、一般的にはRESTの考え方を
Web APIに適用したものをREST APIと呼んでいる。
IT用語辞書より
Webサービスの設計原則の1つであり、
クライアントとサーバーの間でデータのやり取りを行うためのアーキテクチャスタイル。
REST APIは、HTTPプロトコルを使用してリソース(データや機能)に対するアクセスを提供する。
補足:APIとは
APIとは:
Application Programming Interfaceの略で、
ソフトウェアやアプリケーションの機能を外部から呼び出し、利用するためのプログラムの集合体。
つまり、APIはプログラマーがソフトウェアやアプリケーションを作成する際に使用される、
他のプログラムやサービスとのインターフェースを提供する技術。
これをもっと簡単にいうなら、
プログラマーが作成するソフトウェアやアプリケーションと、
他のプログラムやサービスをつなぐための技術
REST APIの設計原則
REST APIの設計原則は以下の4つの項目に基づいています。
1. Uniform Interface(統一インターフェース):
REST APIは、統一されたインターフェースを持つことが重要。
これは、リソースに対する操作を行うための共通の方法を提供することを意味する。
具体的には、HTTPメソッド(GET、POST、PUT、DELETEなど)を使用して操作を表現し、
URI(Uniform Resource Identifier)を使用してリソースにアクセスする。
2. Client-Server Separation(クライアント・サーバーの分離):
REST APIは、クライアントとサーバーの役割を明確に分離することを重視する。
クライアントはリソースの要求を行い、サーバーはそれに応答。
この分離により、クライアントとサーバーは独立して進化し、
スケーラビリティや拡張性が向上する。
3. Stateless Communication(ステートレス通信):
REST APIはステートレス。これは、サーバーがクライアントの状態を保持しないことを意味する。
各リクエストはそれ自体が完全で独立しており、必要な情報はリクエスト自体に含まれている。
これにより、サーバーの負荷を軽減し、シンプルな実装が可能となる。
ステートレス: サーバーがクライアントの状態を保持しないこと.
4. Representation of Resources(リソースの表現):
REST APIでは、リソースが一意の識別子(URI)で表され、それに対して操作が行われる。
サーバーからの応答は、一般的にJSONやXMLなどの表現形式で返される。
クライアントはこれらの表現を解析して処理することができる。
本日は少々、満足できない出来だが、
初めてSpring Bootをつかって作っていたら夜遅くなりすぎてしまった...!^^;
初めてやったフレームワークはRailsだったが、
Railsがいかに簡単だったのかを痛感します。笑
また明日も頑張っていきましょう! I CAN DO ANYTHING!
Discussion