RESTの原則
RESTはネットワークシステムにおける設計の方法のこと。
統一インターフェイス
あらかじめ定義、共有された方法で情報がやりとりされる(webだとHTTP)。みんなで決められた同じものをつかおうってこと。
HTTPにはメソッドが八つと限定していますが、HTTPの拡張性に対して制限が加わった結果HTTPがシンプルなものとなりました。
統一インターフェイスの利点として、システム全体が階層化しやすいことがあります。例えばサーバーとクライアントの間にリクエストをどのサーバーに処理してもらうかを誘導してくれるロードバランサーを設置することで負荷分散をしたり、プロキシ(検問所)を設置して特定のリクエストのみアクセスを許可したりします。これらは同じインターフェースを使っているため可能なことです。
アドレスの可能性
すべての情報が一意なURLの構文で示される。
接続性
やりとりされる情報にはリンクを含むことができる。
情報の中にいくつも別のURLを付けることができるためクライアントがアクセスしやすくなる。
ステートレス性
やりとりは一度で完結し、前のやり取りの結果に影響を受けない。
サーバーがアプリケーション状態を持たない(リクエスト先が同じでも前回の通信内容を覚えてないこと)ステートレス性によってサーバー側の実装を簡略化することができるようになりました。結果クライアントからのリクエストに対してすぐにサーバーの計算機リソースを解放できるようになりました。
上記の四つの原則に従い設計されたシステムをRESTfullなシステムという。