©
This document usesPHP Chinese website manualRelease
Accept-Charset
请求的 HTTP 标头通告的字符集客户端能够理解。使用内容协商,服务器然后选择一个提议,使用它并在Content-Type
响应头中通知客户它选择的内容。浏览器通常不会将此标题设置为每个内容类型的默认值,通常这是正确的,并且传输它将允许更容易的指纹识别。
如果服务器不能提供任何匹配的字符集,理论上可以发回一个406
(不可接受的)错误代码。但是,为了更好的用户体验,这种情况很少发生,Accept-Charset
在这种情况下更常见的方式是忽略 header 。
在早期版本的 HTTP / 1.1 中,ISO-8859-1
定义了一个默认的 charset()。现在不是这种情况,现在每种内容类型都可以有其自己的默认值。
Header type |
Request header |
---|---|
Forbidden header name |
yes |
Accept-Charset:// Multiple types, weighted with the quality value syntax:Accept-Charset: utf-8, iso-8859-1;q=0.5
像utf-8
或iso-8859-15.*
的一个字符集。Header 中没有提到的任何字符集;
'*'
被用作通配符。
;q=
(q因子权重)任何值都按照称为权重的相对质量值的优先顺序排列。
Accept-Charset: iso-8859-1Accept-Charset: utf-8, iso-8859-1;q=0.5Accept-Language: utf-8, iso-8859-1;q=0.5, *;q=0.1
Specification |
Title |
---|---|
RFC 7231, section 5.3.3: Accept-Charset |
Hypertext Transfer Protocol (HTTP/1.1): Semantics and Context |
Feature |
Chrome |
Firefox |
Edge |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
Feature |
Android |
Chrome for Android |
Edge mobile |
Firefox for Android |
IE mobile |
Opera Android |
iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |