双token机制是增强登录授权的一种方式,通常用于海外购物等场景,它采用两种token鉴权用户身份:
1. Access Token:用于请求资源的令牌,有一定的过期时间,客户端请求资源时需要带上该令牌。
2. Refresh Token:用于刷新Access Token的令牌,过期时间比较长,当Access Token过期时,客户端使用Refresh Token请求新的Access Token。
工作流程:
1. 客户端使用用户名和密码请求登录,服务端确认无误后,生成Access Token和Refresh Token返回给客户端。
2. 客户端请求资源时,携带Access Token,验证通过后返回资源。
3. 当Access Token过期时,客户端使用Refresh Token请求新的Access Token。服务端验证Refresh Token无误后,返回新的Access Token。
4. 重复步骤2和3,直到Refresh Token过期,此时需要用户重新登录授权。这样的机制可以确保用户可以长时间在不输入用户名密码的情况下访问资源,同时也不会过于依赖单一的令牌,提高了安全性。通常来说,Refresh Token的过期时间会很长,可能30天、90天甚至更长。
服务端实现:
客户端调用:
这是双token机制的一个简单说明和实现,帮助你加深理解。如果还有其他问题,欢迎在这里提出,我很乐意进行更详细的讨论和解答。