在线文档教程

Accept-Charset

Accept-Charset

Accept-Charset请求的 HTTP 标头通告的字符集客户端能够理解。使用内容协商,服务器然后选择一个提议,使用它并在Content-Type响应头中通知客户它选择的内容。浏览器通常不会将此标题设置为每个内容类型的默认值,通常这是正确的,并且传输它将允许更容易的指纹识别。

如果服务器不能提供任何匹配的字符集,理论上可以发回一个406(不可接受的)错误代码。但是,为了更好的用户体验,这种情况很少发生,Accept-Charset在这种情况下更常见的方式是忽略 header 。

在早期版本的 HTTP / 1.1 中,ISO-8859-1定义了一个默认的 charset()。现在不是这种情况,现在每种内容类型都可以有其自己的默认值。

Header typeRequest header
Forbidden header nameyes

语法

Accept-Charset: <charset> // Multiple types, weighted with the quality value syntax: Accept-Charset: utf-8, iso-8859-1;q=0.5

指令

<charset>像utf-8或iso-8859-15.*的一个字符集。Header 中没有提到的任何字符集;

例子

Accept-Charset: iso-8859-1 Accept-Charset: utf-8, iso-8859-1;q=0.5 Accept-Language: utf-8, iso-8859-1;q=0.5, *;q=0.1

规范

SpecificationTitle
RFC 7231, section 5.3.3: Accept-CharsetHypertext Transfer Protocol (HTTP/1.1): Semantics and Context

浏览器兼容性

FeatureChromeFirefoxEdgeInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)