【HTTPの機能について】

                       このHPはHTTPの機能(ヘッダー、cookie)についてまとめたものです。


1-1 HTTPヘッダー

「HTTPリクエスト」と「HTTPレスポンス」はいずれも、「メッセージヘッダー」を利用することで、HTTPメッセージに関する詳細な情報を送信することができる。メッセージヘッダーは複数の「ヘッダーフィールド」と呼ぶ行から成り立っている。メッセージヘッダーは以下の5つに分けられる。

■リクエストヘッダー

■レスポンスヘッダー

■一般ヘッダー

■エンティティヘッダー

■その他ヘッダー



◆【リクエストヘッダー】

リクエストメッセージを制御するためのヘッダー。主なリクエストヘッダーは以下の通り。



◆【レスポンスヘッダー】

レスポンスメッセージを制御するためのヘッダー。主なレスポンスヘッダーは以下の通り。



◆【一般ヘッダー】

リクエストメッセージ、レスポンスメッセージ、どちらのメッセージにも使用されるヘッダ。主なレスポンスヘッダーは以下の通り。



◆【エンティティヘッダー】

リクエストメッセージ、レスポンスメッセージ、どちらのメッセージにも使用され、メッセージボディに含まれるデータの負荷情報を示す。主なレスポンスヘッダーは以下の通り。



◆【その他ヘッダー】

HTTPには、今まで主要な4種類のヘッダー以外に、よく使用するヘッダーがいくつかある。ここではその中で「Set-Cookie」「Cookie」を紹介する。





1-2 Cookieとは

Cookieとは、WEBサイトを閲覧したときに、ユーザーの識別や状態管理に使用されているファイル(仕組み)を指す。Webサイト側がユーザーの状態を管理するために、サーバーに接続してきたWebブラウザに対して、コンテンツ等と一緒にWebブラウザに保存してもらいたい情報を「Cookie」として送信する。


Cookieを受けとったブラウザはそれを保存しておき、次にそのユーザーがWebサーバーに接続してきた時に、前回発行したCookieを送信してもらうことで、接続してきたユーザーを識別することができる。


■Set-Cookie/Cookieヘッダ


Cookieの送信には、「メッセージヘッダ」が利用される。例えばあるショッピングサイトに一度ログインに成功すると、Webサーバーは「セッションID」を発行後、HTTPレスポンスに「Set-Cookieヘッダ」を含め、HTTPレスポンスを返す。その後、Webブラウザは、HTTPリクエストに「Cookieヘッダ」にセッションIDを含め送信する。