基础使用方式:
js
new Websocket(url, [protocols])
1.实例属性
1-1.protocol
protocol
只读属性返回服务器选择的子协议的名称。
1-2.url
url
只读属性返回由构造函数解析的 Websocket
的绝对 URL
。
1-3.readyState
readyState
只读属性返回 Websocket
连接的当前状态。
有以下几种值:
0
CONNECTING
连接中1
OPEN
连接开启2
CLOSING
连接关闭中3
CLOSED
连接已关闭
1-4.extensions
extensions
只读属性返回服务器选择的扩展。
1-5.binaryType
binaryType
属性控制通过 Websocket
连接接收的二进制数据的类型。
1-6.bufferedAmount
bufferedAmount
只读属性返回已使用 send()
调用排队但尚未传输到网络的数据字节数。
一旦所有排队数据发送完毕,该值将重置为零。连接关闭时该值不会重置为零;如果你继续调用 send()
,这个值将会继续攀升。
2.实例方法
2-1.send()
send()
方法将要通过 WebSocket
连接传输到服务器的指定数据排入队列,并将 bufferedAmount
的值增加包含该数据所需的字节数。
如果数据无法发送(例如需要缓冲但缓冲区已满),则套接字会自动关闭。如果在连接处于 CONNECTING
状态时调用 send()
,浏览器将抛出异常。
如果在连接处于 CLOSING
或 CLOSED
状态时调用 send()
,浏览器将默默地丢弃数据。
2-2.close()
close()
方法关闭 WebSocket
连接或连接尝试(如果有)。
如果连接已经是 CLOSED
,则此方法不执行任何操作。
3.事件监听
3-1.open
监听连接已打开。
3-2.message
监听信息传输。
3-3.close
监听连接关闭。
3-4.error
监听连接出错。