"使用以下PHP来设置响应的内容类型:
header('content-type: application/json; charset=utf-8');
content-type需要大写Content-type?个人认为HTTP头是不区分大小写的。还是只是因为浏览器原因?"
HTTP报头的名称是不区分大小写,根据RFC 2616:
每个标题字段由一个名字后跟一个冒号(“:”)和字段值组成。字段名称不区分大小写。
(字段值可能区分大小写,也可能不区分大小写)
如果信任主要的浏览器遵守这一点,你就全部设置。
顺便说一句,不像大多数的HTTP,方法(动词)是区分大小写的:
方法标记指示在
由请求URI标识的资源上执行的方法。该方法是区分大小写的。
Method = "OPTIONS" ; Section 9.2
| "GET" ; Section 9.3
| "HEAD" ; Section 9.4
| "POST" ; Section 9.5
| "PUT" ; Section 9.6
| "DELETE" ; Section 9.7
| "TRACE" ; Section 9.8
| "CONNECT" ; Section 9.9
| extension-method
extension-method = token
https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2
Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive.
header('Content-type: image/png') 没有与PHP 5.5服务于IE11,因为在图像流显示为文本
header('Content-Type: image/png') 工作,如在图像显示为一个图像
唯一的区别是大写'T'。