WebSocket
WebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。
在正常情况中,每个WebSocket都会经历一系列状态(生命周期事件):
- 连接中(connecting):每个WebSocket的初始状态。此时若发生消息,则消息可能会被排队,直到WebSocket打开之前它们不会被传输。
- 打开状态(open):WebSocket字已被远端接受并且完全可操作。任一方向的消息队列都立即开始传输。
- 关闭中(closing): WebSocket的某一端启动正常关闭,WebSocket将继续传输队列中的消息,但将拒绝新消息进入队列。
- 已关闭(closed): WebSocket已传输其所有消息并已收到来自对端的所有消息。
在异常情况下,WebSocket可能由于HTTP升