WebSocket 连接可能因多种原因断开,常见包括服务端主动断开或网络异常断开。
建议客户端实现自动重连机制,以保证服务的连续性。
⏱ 重连说明
-> 推荐重连间隔:5 秒以上
-> 重连过快可能会被系统短暂限制
⚠️ 5.1 服务端主动断开
当服务端检测到异常(如心跳超时)时,会主动断开连接,并返回断开信息:
{ "type": "close""msg": "Heartbeat timeout, connection closed" }
📌 说明
-> 通常由于未按要求发送或响应心跳导致
-> 收到该消息后,应立即执行重连逻辑
🌐 5.2 网络异常断开
当网络出现异常时:
-> 客户端通常不会收到服务端断开通知
-> 一般会触发本地连接断开事件
📌 说明
-> 需在客户端监听断开事件
-> 建议自动触发重连机制
🔁 5.3 重连机制
为保证连接稳定,建议在以下场景自动执行重连:
-> 接收到 close 指令
-> 监听到连接断开事件
⚡ 重连建议
建议实现自动重连机制
推荐重连间隔:5 秒
避免频繁重连导致连接限制
🔐 连接限制说明
-> 每个 API Key 同时仅允许建立 1 个连接
-> 若提示“已登录”或无法连接,请检查是否存在其他活跃连接
💡 处理建议
关闭已有连接后再重新连接
或等待约 5 分钟后再次尝试连接
💻 开发建议(重要)
建议使用指数退避策略进行重连(如 5秒、10秒、30秒)
建议记录连接状态,避免重复连接
心跳异常应优先触发重连
高并发场景建议增加连接监控机制