1×× 信息

101 Switching Protocols 交换协议

服务器通过 Upgrade 标头字段1了解并愿意遵守客户端的请求,以更改在此连接上使用的应用程序协议。

服务器必须在响应中生成一个 Upgrade 头字段,指示在终止 101 响应的空行之后将立即切换到哪个协议。.

假设服务器只会在有利的情况下同意切换协议。例如,切换到新版本的 HTTP 可能比旧版本更有优势,而在交付使用此类功能的资源时,切换到实时同步协议可能更有利。

典型例子就是Websocket连接握手时,服务器先返回 http 101 状态码,将http协议转换为websocket协议 。


101 代码参考

Rails HTTP Status Symbol :switching_protocols

Go HTTP Status Constant http.StatusSwitchingProtocols

Symfony HTTP Status Constant Response::HTTP_SWITCHING_PROTOCOLS

Python2 HTTP Status Constant httplib.SWITCHING_PROTOCOLS

Python3+ HTTP Status Constant http.client.SWITCHING_PROTOCOLS

Python3.5+ HTTP Status Constant http.HTTPStatus.SWITCHING_PROTOCOLS

← http状态码