36

这是HTTP 标头是否区分大小写?.

在 HTTPContent-Type标头中,我看到了以大写和小写形式表示的字符集名称。例如,对于UTF-8字符集:

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

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

以下是一些混合大小写的变体(后两者在现实世界中肯定不太可能)

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

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

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

所有表格都同样有效吗?或者,忽略字符集名称大小写的客户端和服务器应用程序仅仅是灵活吗?或者,那些只识别一种表示的应用程序是否不合规?

4

1 回答 1

50

[这是我的研究结果。]

RFC 2616第 3.4 条规定如下:

HTTP 字符集由不区分大小写的标记标识。完整的令牌集由 IANA 字符集注册表 [19]定义。

charset = token

现在在这里维护IANA 字符集注册表。在本文档顶部的Note下,第二段内容如下:

字符集名称最多可包含 40 个字符,取自 US-ASCII 的可打印字符。但是,大小写字母的使用没有区别。

结论:这两个参考表明在指定字符集名称时大小写无关紧要。

于 2013-10-15T21:14:39.677 回答