36

これは、 HTTP ヘッダーは大文字と小文字を区別しますか?のフォローアップです。.

HTTPContent-Typeヘッダーでは、文字セット名が大文字と小文字の両方で表現されているのを見てきました。たとえば、UTF-8文字セットの場合:

Content-Type: text/html; charset=UTF-8

Content-Type: text/html; charset=utf-8

大文字と小文字が混在するバリアントを次に示します(後者の 2 つは実際にはありそうにありません)

Content-Type: text/html; charset=Utf-8

Content-Type: text/html; charset=UtF-8

Content-Type: text/html; charset=uTf-8

すべてのフォームは等しく有効ですか? それとも、文字セット名の大文字と小文字を区別しないクライアント アプリケーションとサーバー アプリケーションは単に柔軟性があるだけなのでしょうか? あるいは、表現を 1 つしか認識しないアプリケーションは準拠していませんか?

4

1 に答える 1

50

【調べた結果はこちら】

RFC 2616条項 3.4には、次のように記載されています。

HTTP 文字セットは、大文字と小文字を区別しないトークンによって識別されます。トークンの完全なセットは、IANA 文字セット レジストリ [19]によって定義されています。

charset = token

IANA 文字セット レジストリは現在、ここで管理されています。このドキュメントの最上部のNoteの下にある 2 番目の段落には、次のように書かれています。

文字セット名は、US-ASCII の印刷可能な文字から取得した最大 40 文字です。ただし、大文字と小文字の区別はありません。

結論:これら 2 つのリファレンスは、文字セット名を指定する際に大文字と小文字が区別されないことを示しています。

于 2013-10-15T21:14:39.677 に答える