关于 tymon/jwt-auth 续签问题的疑问

测试时设置过期时间为 1 分钟,可刷新时间设置为 3 分钟。在登录 3 分钟后,就无法再次获得新 token (无论当前的 token 是否过期)。

如果生产环境设置 14 天刷新期,用户在第 14 天过期时刚好处于活跃状态,就会有突然退出登录的情况发生,请问这个问题应该怎么解决?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 6

这个有点矛盾。要么设置长一点,要么重新登录。要解决「突然」这个问题,可以前端优化。

3年前 评论

假如过期时间为14天 刷新时间为20天 第15天就应改用刷新的token去重新签发一个新的token和新的刷新token 不会出现过期的现象

3年前 评论
荒街! (楼主) 3年前

没啥问题啊,刷新时间是期间内所有的token共享的,

3年前 评论

以普通用户的角度来看,这不算问题,平均14天登陆一次,在web端是可以接受的。
如果你非要在技术上解决的话,就需要规定好什么情况才能退出。我上一个项目做的管理后台,用户只要两天不操作就登录态失效。如果超过两天再进页面,就会登陆失效,只需要自己维护token的失效期就好了。

我才开始做的时候,经常想做的更加周全,后来我发现自己是画蛇添足了。

3年前 评论
荒街! (楼主) 3年前
L学习不停 (作者) 3年前

前端记录token有效时间,快到期了前端请求token刷新接口就行

3年前 评论

维护黑名单把

3年前 评论
荒街! (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!