turinghunt-frontend / hooks/useWebSocket
hooks/useWebSocket
变量
MAX_RETRIES
ts
const MAX_RETRIES: 5 = 5;定义于: hooks/useWebSocket.ts:9
WebSocket 断线重连的最大重试次数。
函数
useWebSocket()
ts
function useWebSocket(): void;定义于: hooks/useWebSocket.ts:29
管理 WebSocket 连接生命周期的自定义 Hook。
返回
void
备注
- 自动使用指数退避策略进行断线重连,最多重试 MAX_RETRIES 次。
- 成功建立连接后通过
setSendMessage将send函数注入到GameContext。 - 收到服务端消息后将其封装为
SERVER_MESSAGEAction 并 dispatch。 - WebSocket URL 优先读取
NEXT_PUBLIC_WS_URL环境变量,未配置时自动推断当前协议。 - 触发鉴权失败时(关闭码
4001)不重试。
该 Hook 应在 GameProvider 内部且只在游戏页面中调用一次。