From d0e0af9ed704ba3288016c201d037f5a0cc0b1a5 Mon Sep 17 00:00:00 2001 From: DLmaster361 Date: Wed, 3 Sep 2025 11:58:44 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20ws=E8=BF=9E=E6=8E=A5=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E4=B8=BA=E5=8D=95=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/core.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/api/core.py b/app/api/core.py index f223ad1..803b5fd 100644 --- a/app/api/core.py +++ b/app/api/core.py @@ -34,6 +34,10 @@ router = APIRouter(prefix="/api/core", tags=["核心信息"]) @router.websocket("/ws") async def connect_websocket(websocket: WebSocket): + if Config.websocket is not None: + await websocket.close(code=1000, reason="已有连接") + return + await websocket.accept() Config.websocket = websocket last_pong = time.monotonic() @@ -58,7 +62,7 @@ async def connect_websocket(websocket: WebSocket): except asyncio.TimeoutError: if time.monotonic() - last_pong > 15: - await websocket.close(code=1000, reason="Ping timeout") + await websocket.close(code=1000, reason="Ping超时") break await websocket.send_json( WebSocketMessage(