Skip to content

createTokenRefreshGate

并发请求在 token 刷新进行中时等待,避免仍携带即将被替换的旧 token。

函数签名

typescript
function createTokenRefreshGate(): {
  setTokenRefreshPromise: (promise: Promise<boolean> | null) => void
  waitForPendingTokenRefresh: () => Promise<void>
}

参数

无。

返回值

方法说明
setTokenRefreshPromise注册进行中的刷新 Promise
waitForPendingTokenRefresh请求前等待刷新完成

工作原理

  1. 刷新开始时 setTokenRefreshPromise(refreshPromise)
  2. API 客户端在附加 Authorization 前调用 waitForPendingTokenRefresh
  3. 刷新结束置 null,后续请求立即通过。