From a628b73a80c4b08462f396ca270f3b1b7c51b794 Mon Sep 17 00:00:00 2001 From: cheng <545895878@qq.com> Date: Wed, 23 Sep 2026 20:56:04 +0800 Subject: [PATCH] =?UTF-8?q?config(common):=20=E6=B7=BB=E5=8A=A0=20WebSocke?= =?UTF-8?q?t=20=E6=80=BB=E5=BC=80=E5=85=B3=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 WS_ENABLED 常量作为 WebSocket 总开关 - 在 connect 方法中检查开关状态,关闭时不发起连接 - 在 send 方法中检查开关状态,关闭时不发送消息 - 添加详细注释说明开关的作用和使用方式 --- common/websocket.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/common/websocket.js b/common/websocket.js index a3cd8b7..865a033 100644 --- a/common/websocket.js +++ b/common/websocket.js @@ -11,6 +11,16 @@ import client, { API_HOST } from './api' // SDK 具名导出的连接类(绕开 client.ChatWebSocket 方法内部使用的浏览器 API) import { ChatWebSocketConn } from 'HaveADrink' +/** + * WebSocket 总开关 + * 当前私信实时通道暂未启用,置为 false: + * - connect() 直接返回,不会发起任何 socket 连接/重连 + * - send() 直接返回,不暂存消息 + * - on()/off()/disconnect() 仍可安全调用(空操作),各页面无需改动 + * 需要恢复实时通信时,将此值改为 true 即可。 + */ +const WS_ENABLED = false + /** * 自行解析 host 并构造 ChatWebSocketConn * SDK 的 client.ChatWebSocket() 内部使用 new URL() / new URLSearchParams(), @@ -57,6 +67,7 @@ class WebSocketManager { * @param {string} token - 用户认证 token */ connect(token) { + if (!WS_ENABLED) return if (this.conn || this.isConnecting) return this.token = token || uni.getStorageSync('auth_token') || '' if (!this.token) { @@ -149,6 +160,7 @@ class WebSocketManager { * @param {object} data - 消息数据 */ send(mesgType, data = {}) { + if (!WS_ENABLED) return if (this.isConnected && this.conn) { this._write(mesgType, data) } else {