REST はステートレスですが、その名前には状態転送があります。誰にとっても少し混乱します。
ステートレス
ブラウザーで Web ページを開くと、ユーザーはサービス コンシューマーとして機能し、www サーバーはサービス プロバイダーとして機能して Web ページを提供します。通常の接続の場合、クライアントとサーバーの両方がハンドシェイクを実行し、セッション (TCP 接続と呼ばれます) を開始します。
その後、サーバーとクライアントの動作に基づいて、状態は ESTABLISHED、IDLE、TIMEOUT などのいずれかに変化します。しかし、REST では、ステートレスな HTTP プロトコルを使用しています。つまり、サーバーはセッションに関する情報を保存しません。クライアント。クライアントは、サーバーがサービスを提供するために必要なすべての詳細を送信する責任があります。つまり、 http://somedomain:8080/senthil/services/page1
サーバーから URI を呼び出すと、ページ 1 を完全に提供するのに十分なクライアントに関する詳細が含まれています。
状態遷移
同じ例を使用すると、サーバー上の画像ファイル (リソース) を表示するために何らかの URL を使用して Web ページを開くと、www サーバーは、リソース (画像ファイルの表現) などの形式で画像を表示します (クライアント)。 )。
このプロセス中に、サーバーの一定のリソース状態(つまり、サーバー データベースに保存されているイメージ ファイルの状態) が、クライアントのアプリケーション状態など、わかりやすい形式でクライアントに表示されます。そのため、リソースの状態はクライアントに関して一定のままであり、リソースの表現のみが変更され、それによってアプリケーションの状態が変更されます。
最後に、サーバーとクライアントの両方の状態を暗黙的に変更するリソースの表現 (画像がクライアントに表示される方法) は、REST と呼ばれます。