在处理 Token 的有效期续签时,通常有两种主要策略:自动续签和手动续签。以下是实现这些策略的一些建议:
1. 自动续签
这种方法通常通过使用刷新 Token 来实现:
- 颁发两个 Token:
- 访问 Token(Access Token): 短期有效,用于访问受保护的资源。
- 刷新 Token(Refresh Token): 长期有效,用于获取新的访问 Token。
- 访问 Token 过期后:
- 客户端用刷新 Token 向服务器请求新的访问 Token。
- 服务器验证刷新 Token,并颁发新的访问 Token(可能还有新的刷新 Token)。
- 刷新 Token 的管理:
- 刷新 Token 通常存储在安全的位置(如 HTTP-Only Cookie)。
- 如果刷新 Token 过期,用户需要重新登录。
2. 手动续签
这种方法是当访问 Token 快要过期时,客户端主动请求新的 Token:
- 访问 Token 的有效期监测:
- 客户端在请求发送前检查 Token 的有效期。
- 如果 Token 将要过期:
- 客户端向服务器请求新的访问 Token(可能需要提供用户凭证或刷新 Token)。
- 服务器颁发新的 Token:
- 客户端更新本地存储的访问 Token。