Request Auth and Token Refresh
Scenario
The request-auth example demonstrates how to refresh access tokens and replay failed requests.
- Route:
/examples/request-auth - View:
src/views/examples/scaffold/request-auth/index.vue
Flow
- Send requests with
accessToken. - On
401, enter refresh flow. - If refresh is in progress, queue subsequent requests.
- Replay requests after refresh success; require relogin on failure.
Key Implementation Points
- Use a shared
refreshPromiseto avoid duplicate refresh calls. - Resolve queued requests after refresh completion.
- Clear tokens and surface relogin state on refresh failure.
Common Risks
- Refresh endpoint returning
401repeatedly. - Race conditions overwriting tokens.
- Replayed non-idempotent writes causing duplicates.
Best Practices
- Add retry limits for refresh logic.
- Add idempotency for critical write APIs.
- Record
401 -> refresh -> retrychain in logs.
