WebSocket
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
WebSocket
对象提供了用于创建和管理 WebSocket 连接,以及可以通过该连接发送和接收数据的 API。
使用 WebSocket()
构造函数来构造一个 WebSocket
。
构造函数
WebSocket(url[, protocols])
-
返回一个
WebSocket
对象。
常量
Constant | Value |
---|---|
WebSocket.CONNECTING |
0 |
WebSocket.OPEN |
1 |
WebSocket.CLOSING |
2 |
WebSocket.CLOSED |
3 |
属性
WebSocket.binaryType
-
使用二进制的数据类型连接。
WebSocket.bufferedAmount
只读-
未发送至服务器的字节数。
WebSocket.extensions
只读-
服务器选择的扩展。
WebSocket.onclose
-
用于指定连接关闭后的回调函数。
WebSocket.onerror
-
用于指定连接失败后的回调函数。
WebSocket.onmessage
-
用于指定当从服务器接受到信息时的回调函数。
WebSocket.onopen
-
用于指定连接成功后的回调函数。
WebSocket.protocol
只读-
服务器选择的下属协议。
WebSocket.readyState
只读-
当前的链接状态。
WebSocket.url
只读-
WebSocket 的绝对路径。
方法
WebSocket.close([code[, reason]])
-
关闭当前链接。
WebSocket.send(data)
-
对要传输的数据进行排队。
事件
示例
js
// Create WebSocket connection.
const socket = new WebSocket("ws://localhost:8080");
// Connection opened
socket.addEventListener("open", function (event) {
socket.send("Hello Server!");
});
// Listen for messages
socket.addEventListener("message", function (event) {
console.log("Message from server ", event.data);
});
规范
Specification |
---|
WebSockets # the-websocket-interface |
浏览器兼容性
BCD tables only load in the browser