CloseEvent:code 属性

基线 广泛可用

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

codeCloseEvent 接口的只读属性,它返回一个 WebSocket 连接关闭代码,指示服务器关闭连接的原因。

一个范围在 1000 - 4999 之间的整数 WebSocket 连接关闭代码,指示服务器关闭连接的原因。

状态码 含义 描述
0999 未使用。
1000 正常关闭 连接已成功完成其创建的目的。
1001 正在断开连接 端点即将断开连接,可能是由于服务器故障或浏览器正在离开打开连接的页面。
1002 协议错误 端点由于协议错误而终止连接。
1003 不支持的数据 连接正在终止,因为端点收到了它无法接受的数据类型。(例如,仅文本端点收到了二进制数据。)
1004 保留 保留。将来可能会定义含义。
1005 未收到状态 保留。指示即使预期状态码,也没有提供状态码。
1006 异常关闭 保留。指示当预期状态码时,连接异常关闭(即,未发送关闭帧)。
1007 无效的帧有效负载数据 端点正在终止连接,因为它收到了一条包含不一致数据的消息(例如,文本消息中包含非 UTF-8 数据)。
1008 违反策略 端点正在终止连接,因为它收到了一条违反其策略的消息。这是一个通用状态码,当代码 1003 和 1009 不适用时使用。
1009 消息过大 端点正在终止连接,因为它收到了一个过大的数据帧。
1010 必需扩展 客户端正在终止连接,因为它期望服务器协商一个或多个扩展,但服务器没有。
1011 内部错误 服务器正在终止连接,因为它遇到意外情况,阻止其完成请求。
1012 服务重启 服务器正在终止连接,因为它正在重启。
1013 稍后再试 服务器由于临时条件而终止连接,例如,它超载并正在断开一些客户端。
1014 网关错误 服务器充当网关或代理,并从上游服务器收到无效响应。这类似于 502 HTTP 状态码。
1015 TLS 握手 保留。指示连接由于无法执行 TLS 握手而关闭(例如,无法验证服务器证书)。
10162999 供 WebSocket 协议规范的未来修订版定义,以及供扩展规范定义。
30003999 供库、框架和应用程序使用。这些状态码已 直接在 IANA 注册。WebSocket 协议未定义这些代码的解释。
40004999 供私有使用,因此无法注册。此类代码可由 WebSocket 应用程序之间的先前协议使用。WebSocket 协议未定义这些代码的解释。

示例

以下示例将 code 的值打印到控制台。

js
WebSocket.onclose = (event) => {
  console.log(event.code);
};

规范

规范
WebSockets 标准
# ref-for-dom-closeevent-code②

浏览器兼容性

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

另请参阅