RFC2616 part 4.4规定了HTTP/1.1中如何确定消息结束的方式。该部分的第5条规定,服务器可以关闭连接来表示响应已完成。
它还指出,像这样分隔请求是不可能的。然而,TCP允许客户端关闭其端口并继续接收响应。我甚至进行了测试,它起作用了。
问题:
为什么1999年的标准说这是不可能的,而实际上却是可能的?当时TCP已经得到广泛应用,并且自1974年以来(可能一直到现在)就支持了半关闭。
对于客户端半关闭连接来表示请求结束,是否违反了协议?
请忽略这是否是个好主意:我知道有时你无法确定连接是故意关闭还是断开了,保持连接打开以便以后重用更加合理。