第二节 Connection 字段
最后更新于:2022-04-02 04:39:35
# 3.2 Connection
> 作者:肖鹏-SpiritLing 时间:2018-06-16
> `Connection` 作用:①:控制不在转发给代理的首部字段;②:管理持久连接。
## 3.2.1 控制不在转发给代理的首部字段
| 客户端 | 数据包 | 代理服务器 | 数据包 | 源服务器 |
| --- | --- | --- | --- | --- |
| ==> | GET / HTTP/1.1 | == | | |
| | | ==> | GET / HTTP/1.1 | == |
| ==> | Upgrade: HTTP/1.1 | == | | |
| ==> |Connection: Upgrade | == | | |
```http
Connection: 不在转发的首部字段名
```
在客户端发送请求和服务器响应内,使用 `Connection` 首部字段,可控制不在转发给代理的首部字段(即 `Hop-by-hop`首部)
## 3.2.2 管理持久连接
- ①:`close` 断开连接
```http
Connection: close
```
HTTP/1.1版本的默认连接都是持久连接。为此,客户端会在持久连接上连续发送请求。当服务器端想明确断开连接时,则指定 `Connection` 首部字段的值为 `close`。
- ②:`Keep-Alive` 保持连接
```http
Connection: keep-alive
```
HTTP/1.1 之前的版本的默认连接都是非持久连接。为此,如果想在旧版本的HTTP协议上维持持续连接,则需要指定 `Connection` 首部字段的值为 `keep-alive`。
在客户单发送请求给服务器时,携带此参数和值,服务器也会加上字段和值进行返回响应。
> 作者:肖鹏-SpiritLing 时间:2018-06-16
';