WebSocket: close() 方法
注意:此功能在 Web Workers 中可用。
WebSocket.close() 方法用于关闭 WebSocket 连接或尝试建立的连接(如果存在)。如果连接已处于 CLOSED 状态,则此方法不执行任何操作。
注意: 关闭连接的过程始于 关闭握手。close() 方法在开始关闭握手之前不会丢弃先前发送的消息;即使用户代理仍在忙于发送这些消息,握手也仅在消息发送完成后才会开始。
语法
js
close()
close(code)
close(code, reason)
参数
code可选-
一个表示连接关闭原因的整数 WebSocket 连接关闭码 值。
- 如果未指定,则连接的关闭码将自动设置:对于正常关闭,设置为
1000;否则,设置为 介于1001-1015之间的另一个标准值,以指示连接实际关闭的原因。 - 如果指定了
code参数,其值将覆盖连接关闭码的自动设置,并设置一个自定义代码。该值必须是一个整数:要么是1000,要么是您选择的介于3000-4999之间的自定义代码。如果您指定了code值,您也应该指定一个reason值。
- 如果未指定,则连接的关闭码将自动设置:对于正常关闭,设置为
reason可选-
一个字符串,提供一个自定义的 WebSocket 连接关闭原因(一个简明的、人类可读的对关闭的文字解释)。该值不能超过 123 字节(UTF-8 编码)。
注意: 由于 UTF-8 编码任何非 ASCII 字符需要两到四个字节,因此一个包含非 ASCII 字符的 123 个字符的
reason值将超过 123 字节的限制。如果您指定了
reason值,您也应该指定一个code值。
返回值
无(undefined)。
异常
InvalidAccessErrorDOMException-
如果
code既不是等于1000的整数,也不是介于3000–4999之间的整数,则抛出此异常。 SyntaxErrorDOMException-
如果 UTF-8 编码的
reason值长度超过 123 字节,则抛出此异常。
规范
| 规范 |
|---|
| WebSocket # dom-websocket-close |
浏览器兼容性
加载中…
另见
- RFC 6455(WebSocket 协议规范)