createTokenRefreshGate
并发请求在 token 刷新进行中时等待,避免仍携带即将被替换的旧 token。
函数签名
typescript
function createTokenRefreshGate(): {
setTokenRefreshPromise: (promise: Promise<boolean> | null) => void
waitForPendingTokenRefresh: () => Promise<void>
}参数
无。
返回值
| 方法 | 说明 |
|---|---|
setTokenRefreshPromise | 注册进行中的刷新 Promise |
waitForPendingTokenRefresh | 请求前等待刷新完成 |
工作原理
- 刷新开始时
setTokenRefreshPromise(refreshPromise)。 - API 客户端在附加 Authorization 前调用
waitForPendingTokenRefresh。 - 刷新结束置
null,后续请求立即通过。