WebSocket
>备注: 此特性在 Web Worker 中可用。
WebSocket 对象提供了用于创建和管理与服务器的 WebSocket 连接,以及可以通过该连接发送和接收数据的 API。
使用 WebSocket() 构造函数来构造 WebSocket。
备注:WebSocket API 无法应用背压,因此当消息到达速度超过应用程序的处理速度时,应用程序要么因缓冲这些消息而耗尽设备内存,要么因 100% CPU 使用率而变得无响应,甚至可能同时出现这两种情况。如需一种能提供自动背压的替代方案,请参见 WebSocketStream。
构造函数
WebSocket()-
返回一个新创建的
WebSocket对象。
实例属性
WebSocket.binaryType-
由连接所使用的二进制数据类型。
WebSocket.bufferedAmount只读-
队列中数据的字节数。
WebSocket.extensions只读-
服务器选择的扩展。
WebSocket.protocol只读-
服务器选择的子协议。
WebSocket.readyState只读-
连接的当前状态。
WebSocket.url只读-
WebSocket 的绝对 URL。
实例方法
WebSocket.close()-
关闭连接。
WebSocket.send()-
将待传输的数据加入队列。
事件
使用 addEventListener() 或将事件监听器赋值给此接口的 oneventname 属性,来监听下面的事件。
示例
js
// 创建 WebSocket 连接。
const socket = new WebSocket("ws://localhost:8080");
// 连接打开
socket.addEventListener("open", (event) => {
socket.send("你好,服务器!");
});
// 监听消息
socket.addEventListener("message", (event) => {
console.log("来自服务器的消息:", event.data);
});
规范
| 规范 |
|---|
| WebSockets> # the-websocket-interface> |