一、由来
WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
实际场景:实时获取后台数据,首先想到的一定是ajax每隔几秒不断轮询调用后台接口,这种方式可以实现,简单粗暴,但是一次次的请求会浪费很多的带宽资源。
在java中,有消息中间件MQ,客户端向Broker中间件发消息,服务端监听Broker,也可替换http接口调用实现数据传输。
html5为了优化轮询调用,也提供了类似方式。
WebSocket通信协议,建立一个长链接,客户端监听服务端信息,此链接可手动关闭。
var Socket = new WebSocket(url, [protocol] );
二、事件
以下是 WebSocket 对象的相关事件。假定我们使用了以上代码创建了 Socket 对象:
事件 | 事件处理程序 | 描述 |
---|---|---|
open | Socket.onopen | 连接建立时触发 |
message | Socket.onmessage | 客户端接收服务端数据时触发 |
error | Socket.onerror | 通信发生错误时触发 |
close | Socket.onclose | 连接关闭时触发 |
<!DOCTYPE HTML>
<html>