2016-02-26 114 views
1

如何检测HTTP响应正文内容长度不同的主体大小? Http 1.1如何检测HTTP响应正文内容长度不同的体大小?

我想实现一个http代理。 正常情况下,http代理接收来自服务器的响应;如果头部有内容长度L1,我认为身体的长度是L1。 但是,如果内容长度不同体大小,如何检测身体结束? (在keep-alive模式下,我无法收到eof。)

如RFC2616第4.4节中提到的 “当接收并检测到无效长度时,HTTP/1.1用户代理必须通知用户。

回答

0

一)2616是非常过时

B)的答案应该是在这里:http://greenbytes.de/tech/webdav/rfc7230.html#message.body.length

+0

谢谢您的回复! 我把上面的部分弄红了,但是我找不到解决方法。 在我的情况下,作为一个http代理,我需要找到“Content-Length值不正确”的情况,然后我可以告诉客户端。 在http 1.1中,保持活动状态,我无法区分缓冲区是当前响应溢出数据还是下一个新响应数据。 – Ben

+0

有没有这样的事情,“不正确”,spec-wise。如果指定了内容长度,则它是权威的,所以这是要读取和转发的字节数。如果要读取的字节较少,则该消息被截断。 –