1.websocket协议
websocket约定了一个通信的规范,通过一个握手的机制,客户端(浏览器)和服务器(webserver)之间能建立一个类似tcp
的连接,从而方便c/s之间的实时通信。在websocket出现之前,web交互一般是基于http协议的短连接或者长连接。
2.websocket初始握手
websocket的连接始于一个HTTP请求。该请求和其他请求很相似,但是包含一个特殊的首标————Upgrade,它表示客户端将把
连接升级到websocket协议,以下是客户端和服务端的握手示例
客户端发起的HTTP请求:
——————————————————————————————————————————————————————————————————————————————————————————
GET / HTTP/1.1
Host: 127.0.0.1
Origin: file://
Sec-Websocket-Key:
Sec-Websocket-Version: 13
Upgrade: websocket
——————————————————————————————————————————————————————————————————————————————————————————
服务端发起的HTTP响应
——————————————————————————————————————————————————————————————————————————————————————————
101 Switching Protocols
Connection: Upgrade
Date:
Sec-Websocket-Accept:
Server:
Upgrade: websocket
——————————————————————————————————————————————————————————————————————————————————————————
服务端响应101代码,Upgrade首标和正确的Sec-WebSocket-Accept首标后,建立连接,否则连接不能成功。成功升级后,连接的语法
切换为用于表示WebSocket消息的数据帧格式。
转载请注明原文地址: https://www.6miu.com/read-45601.html