即使不包含 Content-Length 或 Transfer-Encoding,HTTP 响应标头(如下所示)是否合法?
- Http: Response, HTTP/1.1, Status: Ok, URL: /AAA/B.json
ProtocolVersion: HTTP/1.1
StatusCode: 200, Ok
Reason: OK
Expires: Fri, 05 Oct 2012 01:41:30 GMT
Date: Fri, 05 Oct 2012 01:40:46 GMT
Vary: Accept-Encoding
Accept-Ranges: bytes
Cache-Control: public, max-age=43
Server: Noelios-Restlet-Engine/1.1.10
ContentType: application/json;charset=UTF-8
ContentEncoding: gzip
Connection: close
X-Served-By: 85.111
HeaderEnd: CRLF
我希望看到 Content-Length 或 Transfer-Encoding,但它们都不存在。
我阅读了 HTTP-RFC,但仍然不确定。
@CodeCaster,我确实阅读了 RFC 第 4.4 节,但仍不清楚,如您所见,响应标头用于返回 json 流,因此:
- 第 4.4 节,规则 1 定义不得包含消息正文,似乎不适用于我的情况。
- 第 4.4 节,规则 4,对此不确定,但由于我在响应标头中没有看到“multipart/byteranges” - 这是否意味着该规则不适用于我?
- 第 4.4 节规则 5,这对我来说很不清楚,因为标题实际包含“连接:关闭”,是否相关?
那么,还有什么意见吗?