我应该为HTTP标头使用什么字符编码?

我应该为HTTP标头使用什么字符编码?

我正在使用一个“有趣”的HTML特殊字符(✰)(请参阅http://html5boilerplate.com/获取更多信息)获取ServerHTTP标头,并且我想知道它是否符合每个规范。

  • 在Windows Xp Pro SP 3上使用Chrome中的开发工具中的网络选项卡,我看到✰很好。

  • 在IE8中,✰ 正确呈现。

  • w3.org HTML验证器无法正确呈现它(显示“ â°”代替)。

现在,我不太热衷于角色编码......坦率地说,我并不太关心它们; 我只是盲目地使用UTF-8 cus我被告知。:-)


是不是由不同的解析器/浏览/引擎/中的错误引起的差异(无论他们被称为什么)?

是否有针对此标准或可能是HTTP标头“值”的允许字符列表?


吃鸡游戏
浏览 585回答 2
2回答

BIG阳

简而言之:只保证ASCII能够正常工作。允许一些非ASCII字节用于向后兼容,但不应该是可显示的。HTTPbis放弃并指定在标题中除了ASCII之外没有有用的编码:从历史上看,HTTP允许在ISO-8859-1字符集[ISO-8859-1]中使用文本的字段内容,仅通过使用[RFC2047]编码支持其他字符集。实际上,大多数HTTP头字段值仅使用US-ASCII字符集[USASCII]的子集。新定义的标题字段应该将其字段值限制为US-ASCII八位字节。收件人应该将字段内容(obs-text)中的其他八位字节视为不透明数据。以前,1999年的RFC 2616定义了这个:只有当根据RFC 2047 [14]的规则进行编码时,* TEXT的字才能包含ISO-8859-1 [22]以外的字符集中的字符。和RFC 2047是MIME编码,所以它是:=?UTF-8?Q?=E2=9C=B0?=但我不认为很多(如果有的话)客户支持它。
打开App,查看更多内容
随时随地看视频慕课网APP