HTTP响应的结束

HTTP响应的结束,http,http-headers,Http,Http Headers,在没有内容长度头的情况下,什么指示HTTP响应的结束 我已经读到,在某些情况下,服务器会关闭TCP连接。但我亲眼目睹了TCP连接在收到所有响应后仍然存在的情况 因此,一个主要问题出现在: 没有内容长度标题 TCP连接在收到所有HTTP响应后存在 浏览器希望使用相同的TCP连接以发送更多HTTP请求 在这种情况下,浏览器如何知道它可以使用相同的TCP连接? 服务器可能会发送更多与第一个HTTP请求相关的内容,这些内容会与第二个HTTP响应混淆。如果客户端和服务器都支持HTTP 1.1,并且服务

在没有
内容长度
头的情况下,什么指示HTTP响应的结束

我已经读到,在某些情况下,服务器会关闭TCP连接。但我亲眼目睹了TCP连接在收到所有响应后仍然存在的情况

因此,一个主要问题出现在:

  • 没有
    内容长度
    标题
  • TCP连接在收到所有HTTP响应后存在
  • 浏览器希望使用相同的TCP连接以发送更多HTTP请求
在这种情况下,浏览器如何知道它可以使用相同的TCP连接?
服务器可能会发送更多与第一个HTTP请求相关的内容,这些内容会与第二个HTTP响应混淆。

如果客户端和服务器都支持HTTP 1.1,并且服务器事先不知道响应正文的大小(因此无法发送
内容长度
响应标头),服务器应该使用,这允许客户端查找响应正文的结尾,即使服务器在发送响应后没有立即关闭TCP连接

如果无法使用HTTP 1.1(因为客户端或服务器太旧),则无法使用分块编码,在这种情况下,发送不带
Content Length
头的响应会阻止服务器保持TCP连接的持久性