我使用SmartSniff工具来捕获uTorrent应用程序和服务器之间的http消息。我发现一个服务器发送"HTTP/1.0 200 OK"响应消息与一个身体,没有头,可以告诉身体的长度或"块"选项,但uTorrent似乎没有麻烦,它工作得很好。我想知道它是怎么做到的?
我认为,也许,uTorrent知道这个"服务器错误",当它期待一个主体,在它读取响应行和头(在这种情况下没有)之后,它读取,直到服务器关闭连接。这可能吗?
抓住交流:
- /announce.php吗?HTTP/1.1
- 主持人:some.server.here: 1234
- user - agent: uTorrent/3320 (30416)
- 接受编码:gzip
- 连接:紧密的
- http/1.0 200 ok
- (空行)
- d8: completei176e10: incompletei0e8: intervali3600e5: peers0: e
我研究了提供的链接,我找到了答案。内容如下:
在没有声明消息体长度的响应消息中,消息体长度由服务器关闭连接之前接收到的八位字节数决定。