Skip to content

createAuthRecovery

创建 401 恢复流程:清理 token → 恢复会话 → 广播恢复事件 → 重放原请求。

前置依赖

依赖参数

参数名类型说明
deps.clearAuthTokens() => void清理本地 token
deps.recoverSession() => Promise<boolean>拉起登录等,成功返回 true

函数签名

typescript
function createAuthRecovery(deps: CreateAuthRecoveryDeps): AuthRecovery

参数

参数名类型必填说明
depsCreateAuthRecoveryDeps恢复流程依赖

返回值

方法说明
recoverAuthSession串行化恢复会话
fetchWithAuthRecovery401 时恢复并重试一次
onAuthRecovered订阅恢复成功事件

工作原理

  1. recoverAuthSession 串行化,避免并发弹多个登录框。
  2. fetchWithAuthRecovery 在 401 时调用恢复并重放原请求。
  3. onAuthRecovered 用于重连 WebSocket 等副作用。