连接
Connection 通用头部控制当前事务完成后网络连接是否保持打开状态。如果发送的值为 keep-alive,则连接保持持久且不关闭,允许随后对同一服务器的请求继续进行。
警告: 在 HTTP/2 和 HTTP/3 中,禁止使用与连接相关的头部字段,例如 Connection 和 Keep-Alive。Chrome 和 Firefox 在 HTTP/2 响应中忽略它们,但 Safari 符合 HTTP/2 规范要求,并且不会加载包含它们的任何响应。
消息使用的所有 逐跳头部(包括标准逐跳头部(Keep-Alive、Transfer-Encoding、TE、Connection、Trailer、Upgrade、Proxy-Authorization 和 Proxy-Authenticate))必须列在 Connection 头部中,以便第一个代理知道它必须消耗这些头部,而不是将其转发。
Connection 的默认值在 HTTP/1.0 和 HTTP/1.1 之间发生了变化。因此,为了确保向后兼容性,浏览器通常会显式发送 Connection: keep-alive,尽管这是 HTTP/1.1 中的默认值。
语法
http
Connection: keep-alive
Connection: close
指令
close-
指示客户端或服务器希望关闭连接。这是 HTTP/1.0 请求中的默认值。
- 任何以逗号分隔的 HTTP 头部列表 [通常
keep-alive] -
指示客户端希望保持连接打开状态。在 HTTP/1.1 请求中,保持连接打开是默认值。头部列表是第一个非透明代理或缓存(介于两者之间)要移除的头部名称:这些头部定义了发射器与第一个实体之间的连接,而不是目标节点。
规范
| 规范 |
|---|
| HTTP 语义 # field.connection |
浏览器兼容性
BCD 表格仅在浏览器中加载