6 回答

TA贡献1802条经验 获得超5个赞
当令牌过期后,一般的处理方式是跳转到登陆页面。
但oauth2
有定义如何更新令牌,你也可以自己使用其他实现。令牌(access token)
过期1个超时时间
内,通过旧的刷新令牌(refresh token)
获取新的令牌,以此达到续1个超时周期的目的。而如果超过1个超时周期(就是1个超时时间内没有访问),那就是真的超时,需要重新登录。这意外这用户停留

TA贡献1784条经验 获得超2个赞
首先这种情况就是不应该发生的。
我之前的做法:
如果是网站:当用户某次打开网页的时候,如果 token 没过期,要保证在关掉网页之前 token 不过期。
如果是app:用户某次打开 app ,如果 token 没过期,要保证在关掉 app 之前 token 不过期。

TA贡献1757条经验 获得超8个赞
这个问题还是挺常见的,比如我开这个窗口长时间不关,然后就过期了.......
也挺好解决:
场景1:如果用户长时间停留,超过一个token有效的最长时间,无解
场景2:如果token
的有效时间是3天,那么不管用户什么时候再次进来,刷新一下token
有效时间就好了,比如今天登陆,第二天再登陆,那么第二天再登陆的有效时间其实已经又有三天了,或者直接把token
换掉,一了百了。这样的话对于场景一就只能在挂了三天的页面再操作才会出现了。
总结:用户每次初次进来的时候验证一下旧的token
,无效就先登录,有效也要刷新token
就好了,不管是刷新token
的有效时间或者token
的值。

TA贡献1846条经验 获得超7个赞
添加回答
举报