WebSocket

基线 广泛可用

此功能已得到很好的建立,并且可以在许多设备和浏览器版本中使用。它自以下时间起在浏览器中可用: 2015年7月.

注意:此功能在Web Workers中可用。

WebSocket 对象提供用于创建和管理与服务器的WebSocket连接的 API,以及用于在连接上发送和接收数据的 API。

要构造一个 WebSocket,请使用WebSocket()构造函数。

EventTarget WebSocket

构造函数

WebSocket()

返回一个新创建的 WebSocket 对象。

实例属性

WebSocket.binaryType

连接使用的二进制数据类型。

WebSocket.bufferedAmount 只读

已排队数据的字节数。

WebSocket.extensions 只读

服务器选择的扩展。

WebSocket.protocol 只读

服务器选择的子协议。

WebSocket.readyState 只读

连接的当前状态。

WebSocket.url 只读

WebSocket 的绝对 URL。

实例方法

WebSocket.close()

关闭连接。

WebSocket.send()

将数据排队以进行传输。

事件

使用 addEventListener() 或通过将事件监听器分配到此接口的 oneventname 属性来监听这些事件。

close

当与 WebSocket 的连接关闭时触发。也可通过 onclose 属性获得。

error

当与 WebSocket 的连接由于错误而关闭时触发,例如某些数据无法发送时。也可通过 onerror 属性获得。

message

当通过 WebSocket 接收数据时触发。也可通过 onmessage 属性获得。

open

当与 WebSocket 的连接打开时触发。也可通过 onopen 属性获得。

示例

js
// Create WebSocket connection.
const socket = new WebSocket("ws://127.0.0.1:8080");

// Connection opened
socket.addEventListener("open", (event) => {
  socket.send("Hello Server!");
});

// Listen for messages
socket.addEventListener("message", (event) => {
  console.log("Message from server ", event.data);
});

规范

规范
WebSockets 标准
# the-websocket-interface

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅