httpリクエストメッセージレスポンスメッセージフォーマット
HTTPリクエストメッセージとレスポンスメッセージのフォーマットは以下のとおりです。
HTTPリクエストメッセージフォーマット:
<方法> <路径> <协议版本>
<请求头部字段1>: <值1>
<请求头部字段2>: <值2>
...
<空行>
<请求体>
<方法>
: GET、POST、PUT、DELETE などのリクエスト メソッド。<路径>
: 要求されたパスは、アクセスする必要があるリソースを示します。<协议版本>
: 使用されるプロトコルのバージョン。通常は HTTP/1.1 または HTTP/2。
リクエスト ヘッダー フィールド: リクエストに関する追加情報が含まれます。各フィールドは、コロンで区切られたフィールド名と対応する値で構成されます。
空行: リクエスト ヘッダーとリクエスト本文は空行で区切る必要があります。
リクエストボディ: POST または PUT リクエストに含まれるデータ。通常はフォーム データ、JSON データなどを送信するために使用されます。
HTTP 応答メッセージの形式:
<协议版本> <状态码> <状态码描述>
<响应头部字段1>: <值1>
<响应头部字段2>: <值2>
...
<空行>
<响应体>
<协议版本>
: 使用されるプロトコルのバージョン。通常は HTTP/1.1 または HTTP/2。<状态码>
: サーバーによるリクエストの処理結果を示すステータス コード (成功を示す 200、リソースが見つからないことを示す 404 など)。<状态码描述>
: ステータスコードの簡単な説明。
応答ヘッダー フィールド: 応答に関する追加情報が含まれます。各フィールドは、コロンで区切られたフィールド名と対応する値で構成されます。
空行: 応答ヘッダーと応答本文は空行で区切る必要があります。
応答本文: サーバーから返されるデータ (HTML、JSON、ファイルなど)。
リクエスト メッセージとレスポンス メッセージは両方ともプレーン テキストであり、データのやり取りはサーバーとブラウザ間の送信を通じて行われることに注意してください。メッセージの具体的な内容は、さまざまな要求と応答のタイプに応じて異なります。
トークン Cookie セッションの違い
トークン、Cookie、セッションは一般的な認証およびセッション管理メカニズムですが、それらの違いは次のとおりです
。
- トークンは、ユーザーの身元を確認するために使用されるステートレスな認証メカニズムです。
- ユーザーが認証された後、サーバーはトークンを生成し、それをクライアントに送信します (通常は HTTP 応答経由)。
- クライアントはトークンを受信すると、それをローカル (通常はブラウザーの localStorage やモバイル アプリケーションのローカル ストレージなどのクライアントのメモリ) に保存します。
- クライアントがサーバーにリクエストを送信するたびに、リクエストの一部として (通常は HTTP リクエスト ヘッダーの Authorization フィールドを通じて) トークンをサーバーに送信する必要があります。
- リクエストを受信した後、サーバーはトークンの有効性を検証してユーザーの身元を特定します。
- トークンには、ユーザー ID、権限などの暗号化された情報を含めることができます。
クッキー (HTTP クッキー): - Cookie は、クライアント側で状態情報を保存するためのメカニズムです。
- ユーザーが認証されると、サーバーは応答に Cookie を設定し、それをクライアントに送信します。
- クライアントは Cookie を受信すると、それをローカル (通常はブラウザー) に保存します。
- クライアントがサーバーにリクエストを送信するたびに、Cookie がリクエストの一部としてサーバーに自動的に送信されます。
- サーバーはリクエストを受信すると、Cookie の内容を解析して関連するステータス情報を取得します。
- Cookie は通常、ユーザーのログイン状態の維持、ユーザーのセッションの追跡などに使用されます。
セッション: - セッションはサーバー側で状態情報を保存するためのメカニズムです。
- ユーザーが認証されると、サーバーはユーザーのセッションを作成し、セッション ID をクライアントに送信します (通常は Cookie 経由)。
- クライアントはセッション ID を受信すると、それをローカルに (通常は Cookie に) 保存します。
- クライアントがサーバーにリクエストを送信するたびに、リクエストの一部として (通常は Cookie を介して) セッション ID がサーバーに自動的に送信されます。
- リクエストを受信した後、サーバーはセッション ID を通じて対応するセッションを見つけ、関連するステータス情報を取得します。
- サーバーはセッションの内容をサーバー側 (通常はメモリまたはデータベース) に保存します。
- セッションは通常、ユーザー セッションの追跡、ユーザー認証情報の保存などに使用されます。
まとめると、Token はステートレスな認証機構、Cookie はクライアント側で状態情報を保存する機構、Session はサーバー側で状態情報を保存する機構です。これらは実装が異なり、さまざまなシナリオやニーズに適しています。