[1] HTTP の要求頭欄は、 頭欄の分類で、広い意味では HTTP 要求メッセージの頭部に使う欄一般を、 狭い意味では特に HTTP 要求メッセージでのみ使用する頭欄を指します。
メモ: 広い意味で要求頭欄
に分類される頭欄のうち、
狭い意味では要求頭欄
に含まれないものは、
HTTP メッセージ自体に関する一般頭欄と HTTP
メッセージで伝達する実体に関する実体頭欄に分けられます。
Depth:
, Destination:
, If
, Overwrite:
各欄は RFC2518 では分類なし。Pragma:
欄は、後の HTTP
では一般頭欄に分類されています。Query-UTF-8
は応答頭欄かつ要求頭欄です。[19] RFC 1945 (HTTP/1.0) 5.2; RFC 2068・2616 (HTTP/1.1) 5.3 Request Header Fields
The request-header fields allow the client to pass additional information about the request, and about the client itself, to the server. These fields act as request modifiers, with semantics equivalent to the parameters on a programming language method
(procedure)invocation.
要求頭欄は、クライアントが要求についておよびクライアント自身についての追加の情報をサーバーに渡すことを可能とします。
要求頭欄は、プログラム言語の method (手続き) 呼出しの引数と同等の意味を持つ、要求修飾子として働きます。
{1945}
Request-Header = Authorization ; Section 10.2 | From ; Section 10.8 | If-Modified-Since ; Section 10.9 | Referer ; Section 10.13 | User-Agent ; Section 10.15
{2068}
request-header = Accept ; Section 14.1 | Accept-Charset ; Section 14.2 | Accept-Encoding ; Section 14.3 | Accept-Language ; Section 14.4 | Authorization ; Section 14.8 | From ; Section 14.22 | Host ; Section 14.23 | If-Modified-Since ; Section 14.24 | If-Match ; Section 14.25 | If-None-Match ; Section 14.26 | If-Range ; Section 14.27 | If-Unmodified-Since ; Section 14.28 | Max-Forwards ; Section 14.31 | Proxy-Authorization ; Section 14.34 | Range ; Section 14.36 | Referer ; Section 14.37 | User-Agent ; Section 14.42
{2616}
request-header = Accept ; Section 14.1 | Accept-Charset ; Section 14.2 | Accept-Encoding ; Section 14.3 | Accept-Language ; Section 14.4 | Authorization ; Section 14.8 | Expect ; Section 14.20 | From ; Section 14.22 | Host ; Section 14.23 | If-Match ; Section 14.24 | If-Modified-Since ; Section 14.25 | If-None-Match ; Section 14.26 | If-Range ; Section 14.27 | If-Unmodified-Since ; Section 14.28 | Max-Forwards ; Section 14.31 | Proxy-Authorization ; Section 14.34 | Range ; Section 14.35 | Referer ; Section 14.36 | TE ; Section 14.39 | User-Agent ; Section 14.43
Request-HeaderRequest-header field names can be extended reliably only in combination with a change in the protocol version. However, new or experimental header fieldsmayMAY be given the semantics of request-header fields if all parties in the communication recognize them to be request-header fields. Unrecognized header fields are treated asEntity-Headerentity-header fields.
要求頭欄名は、プロトコル版中の変更と組合せてのみ確実に拡張できます。 しかし、新しいあるいは実験的な頭欄は、 通信のすべての当事者がこれを要求頭欄であると認識すれば、 要求頭欄の意味を与えられても構いません。 認識できない頭欄は実体頭欄として扱われます。
注: 追加・削除は RFC 1945 → RFC 2068 の修正部。
[2] HTCPCP (RFC2324) は、 HTTP に頭欄を追加しています。
Accept-Addition: | 受付ける材料 | [RFC 2324] |
Accept: | [RFC 2326] |
Accept-Encoding: | [RFC 2326] |
Accept-Language: | [RFC 2326] |
Authorization: | [RFC 2326] |
Bandwidth: | [RFC 2326] |
Blocksize: | [RFC 2326] |
Conference: | [RFC 2326] |
From: | [RFC 2326] |
Host: | ([RFC 2326]) |
If-Modified-Since: | [RFC 2326] |
Proxy-Require: | [RFC 2326] |
Range: * | [RFC 2326] |
Referer: | [RFC 2326] |
Require: | [RFC 2326] |
Session: * | [RFC 2326] |
Speed: | [RFC 2326] |
Transport: * | [RFC 2326] |
[7] RFC3261 の世代の規格くらいになると要求頭欄と一般頭欄と応答頭欄の区別ってあんまり意味を成さなくなるんですが、 とりあえず仕様にそう書いてあるか、 又は要求にしか使えないことになってる頭欄はここに分類してます。
そんなわけで、
後の規格で応答でも使えることになったら、
その時点で一般頭欄に再分類してます。
そういう欄には **
印をつけときます。
Authorization: | [RFC 2543], [RFC 3261] |
Contact: | [RFC 2543] ** |
Hide: | [RFC 2543], [RFC 3261] (非推奨) |
In-Reply-To: | [RFC 3261] |
Max-Forwards: | [RFC 2543], [RFC 3261] |
Organization: | [RFC 2543] ** |
P-Called-Party: | [RFC 3455] |
P-Visited-Network-ID: | [RFC 3455] |
Priority: | [RFC 2543] ** |
Proxy-Authorization: | [RFC 2543], [RFC 3261] |
Proxy-Require: | [RFC 2543], [RFC 3261] |
r: == Refer-To: | [RFC 3515] |
RAck: | [RFC 3262] |
Refer-To: | [RFC 3515] |
Require: | [RFC 2543] ** |
Response-Key: | [RFC 2543], [RFC 3261] (非推奨) |
Route: | [RFC 2543], [RFC 3261] |
s: == Subject: | [RFC 2543] |
Security-Client: | [RFC 3329] |
Security-Verify: | [RFC 3329] |
Subject: | [RFC 2543], [RFC 3261] |
Subscription-State: | [RFC 3265] |
User-Agent: | [RFC 2543] ** |