Websocket 握手操作



为了在javascript中创建websocket连接,我们可以使用websocket api,例如:

const socket = new WebSocket('ws://localhost:8080');

然后浏览器将通过 HTTP GET 请求发起握手,其中包含以下标头:

Upgrade: websocket
Connection: Upgrade 

和服务器响应:

HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=

之后,客户端和服务器将打开 WebSocket 连接。

所以我的问题是是否可以在其他方法上进行握手? 如果可以通过像xhr这样的javascript或类似的东西来处理握手?

WebSockets 握手仅使用 GET 定义,请参阅标准。此外,由于WebSockets不适合HTTP的请求-响应方案,但本质上构建了一个永久连接,服务器和客户端都可以彼此独立地编写,因此无法使用XHR处理WebSockets,XHR期望对单个请求进行单个响应。

相关内容

  • 没有找到相关文章

最新更新