我已经阅读了很多关于此问题的文章和Github问题,但我不确定最佳解决方案是什么。对于上下文,我有一个laravel API,在认证时,会发出一个小时的JWT。当在该小时段之后发出第一个API请求时,API将返回401令牌到期错误。据我所知,有两种方法可以处理刷新令牌;
第2项听起来不必要地复杂,因为您必须拦截并排队来自客户端的任何请求。哪种方式最好处理?
答案 0 :(得分:3)
- 在接收令牌时的API中,如果它已过期但我们在刷新ttl内,请刷新该令牌,正常继续请求并在标题中返回新令牌
醇>
第一个比第二个更有意义和更容易,因为如果令牌过期而您不必等待401响应重放那些不是那些API请求,那么您不必存储请求对UX有好处。
另一种方法是创建弹出窗口,让用户选择是否要获取新令牌。