LoginSignup
0
0

Webを支える技術 付録B −− HTTPヘッダ

Posted at

サーバ情報

Date

HTTPヘッダ 利用するメッセージ 関連ステータスコード 説明
Date リクエスト、レスポンス 日時 - メッセージを生成した日時を示す。
Retry-After レスポンス 日時または数値(秒) 202 Accepted、503 Service Unavailabe クライアントに再度アクセスしてほしい時間を示す。
Server レスポンス サーバソフトウェアの名称とバージョン - サーバソフトウェアの情報を示す
Set-Cookie レスポンス 文字列 - セッション情報などをサーバ側からクライアントに設定するときに利用

クライアント情報

HTTPヘッダ 利用するメッセージ 関連ステータスコード 説明
Cookie リクエスト 文字列 - Set-Cookieヘッダで指定されたCookie情報を示す。
Expect リクエスト 100-continue 100 Continue ,407 Expection Failed クライアントが期待するサーバの振る舞いを示す。
From リクエスト メールアドレス - クライアントを操作している人のメールアドレスを示す。セキュリティ上の理由から現在では使われていない。
Referer リクエスト URI - ブラウザでリンクをクリックしたときに、クリック元のURIを示す
User-Agent リクエスト クライアントソフトウェアの名称とバージョン - クライアントのソフトウェア情報を示す。

リソース情報

HTTPヘッダ 利用するメッセージ 説明
Content-Encoding リクエスト、レスポンス 圧縮方式 ボディの圧縮方式を示す。
Content-Language リクエスト、レスポンス 言語タグ ボディに記述している自然言語を示す。
Content-Length リクエスト、レスポンス 10進数の値(バイト) ボディのサイズをバイトで示す。
Content-MD5 リクエスト、レスポンス MD5ハッシュ値 ボディのMD5ハッシュ値を示す。転送中にボディが破損していないかのエラー検出に利用できる。
Content-Type リクエスト、レスポンス メディアタイプ ボディのメディアタイプを示す。
Content-Location レスポンス URI リクエストで指定したURI以外からもリソースを取得できるときに、そのURIを示す
Last-Modified レスポンス 日時 リソースの最終更新日時を示す。
Location レスポンス URI リソースの最終更新日時を示す。
Host リクエスト ホスト名とホスト番号 リクエストしたURIのホスト名とポート番号を示す。

コンテントネゴシエーション

HTTPヘッダ 利用するメッセージ 関連ステータスコード 説明
Accept リクエスト メディアタイプの優先度 300 Multiple Choices,406 Not Acceptable クライアントが理解できるメディアタイプを指定
Accept-Charset リクエスト 文字エンコーディングの優先度 300 Multiple Choices,406 Not Acceptable クライアントが理解できる文字エンコーディングを指定
Accept-Encoding リクエスト 圧縮方式の優先度 300 Multiple Choices,406 Not Acceptable クライアントが理解できる圧縮方式を指定
Accept-Language リクエスト 300 Multiple Choices,406 Not Acceptable クライアントが理解できる言語タグを指定
Vary レスポンス Accept-*ヘッダのリスト - サーバがコンテントネゴシエーションを行えるヘッダを示す

条件付きリクエスト

HTTPヘッダ 利用するメッセージ 関連ステータスコード 関連メソッド 説明
Etag レスポンス ETagの値を示す文字列 - - リソースが更新されたら変化する値であるETagを示す
If-None-Match リクエスト Etag - GET 提示したETagと合致しなかったときにリソースを取得することを示す
If-Modified-Since リクエスト 日時 - GET 提示した日時以降にリソースが更新されていたらリソースを取得することを示す
If-Match リクエスト Etag 412 Precondition Failed PUT、DELETE 提示したETagと合致したらリクエストを実行することを示す
If-Unmodified-Since リクエスト 日時 412 Precondition Failed PUT、DELETE 提示した日時以降リソースが更新されていなかったらリクエストを実行することを示す

部分的GET

HTTPヘッダ 利用するメッセージ 関連ステータスコード 関連メソッド 説明
Range リクエスト 取得したい部分(バイト) - GET クライアントが部分的GETでリソースの一部を取得したいときに、その幅をバイトで指定
If-Range リクエスト Etagまたは日時 - GET クライアントがリソースの一部を保持していて、そのリソースの別の部分をほしい場合、If-MatchヘッダやIf-Unmodified-SinceヘッダとRangeヘッダを組み合わせて、条件付きGETと部分的GETを一緒に発行できる
Accept-Range レスポンス bytesまたはnone 206 Partial Content GET、HEAD リクエストしたリソースが部分的GETできるかどうかを示す。
Content-Range レスポンス バイト幅 206 Partial Content GET 部分的GETで取得したボディがリソースのどの部分に該当するかをバイト幅で示す

キャッシュ

HTTPヘッダ 利用するメッセージ 説明
Pragma リクエスト、レスポンス no-cache もともとは実装の特別な振る舞いを示すヘッダだったが、歴史的理由から値にはno-cacheだけをとり、このリソースがキャッシュできないことを示す
Cache-Control リクエスト、レスポンス 仕様で定められたコントロール識別子no-cache、max-age: xxxxxなど クライアントとサーバが従うべきキャッシュ方法を示す
Expires レスポンス 日時 レスポンスのボディがキャッシュとして新鮮でなくなる日時を示す。
Age レスポンス 経過時間(秒) プロキシなどのHTTPキャッシュがオリジナルのサーバで生成されてからの経過時間を示す

認証

HTTPヘッダ 利用するメッセージ 関連ステータスコード 説明
WWW-Authenticate レスポンス 認証方式 401 Unauthorized 401 Unauthorizedを返す際に、サーバがサポートする認証方式を示す。
Authorization リクエスト 認証情報 401 Unauthorized 認証する際に、認証情報を提示
Proxy-Authenticate レスポンス 認証方式 407 Proxy Authentication Required 407 Proxy Authentication Requiredを返す際に、プロキシがサポートする認証方式を示す
Proxy-Authorization リクエスト 認証情報 - プロキシ認証する際に、認証情報を提示
X-WSSE リクエスト 認証情報 - WSSE認証する際に、認証情報を提示

チャンク転送

HTTPヘッダ 利用するメッセージ 説明
TRansfer-Encoding リクエスト、レスポンス chunked チャンク転送を行っていることを示す
Trailer レスポンス ヘッダ名のリスト チャンク転送時のtrailer(メッセージの末尾に付けるヘッダ値)に含まれているヘッダを示す
TE リクエスト trailer クライアントが認識するTransfer-Encodingヘッダを指定

そのほか

HTTPヘッダ 利用するメッセージ 関連ステータスコード 関連メソッド 説明
Allow レスポンス メソッド名のリスト 405 Method Not Allowed OPTIONS リソースがサポートするメソッドのリストを示す
Connection リクエスト、レスポンス close - - このメッセージのあとにTCPの接続をきることを示す
MAx−Forwards リクエスト 数値(回数) - TRACE,OPTIONS TRACEメソッドやOPTIONSメソッドで、中継サーバなどに残り何回転送できるかを示す
Upgrade リクエスト、レスポンス プロトコル名のリスト 101 Switching Protocols - クライアントが指定した場合は自分がサポートしているプロトコルを示す
Via リクエスト、レスポンス 仲介者のホスト名、ポート番号、プロトコルバージョン - - サーバとクライアントの間にプロキシなどの仲介者がいる場合に、仲介者それぞれのホスト名とプロトコルバージョンを記録
Warning レスポンス エラーコードやテキストフレーズ - - プロキシなどの仲介者が追加したステータスコードの補足である。このヘッダ専用の3桁のエラーコードとテキストフレーズで構成
Content-Disposition リクエスト、レスポンス 文字列 - - ファイル名を示す
Slug リクエスト %エンコードした文字列 - POST リソースを新規作成するときに、新しく作成するURIに利用できる文字列のヒントとなる文字列を示す
X-HTTP-Override リクエスト HTTPメソッド名 - POST POSTでPUT/DELETEを代用するときに、本来指定したかったメソッド名を示す
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0