如标题所示
我再详细描述一下我遇到的问题,如果我再发送请求的试试,后台验证header中的token,如果这时候,发现token过期,然后一系列判断其为合法token,允许token刷新,后台主动刷新token,并且成功获得新的token,那么问题来了:
因为请求的接口是有返回信息的,我这时候是返回重新刷新的token给前端吗,还是获得新的token后,直接返回接口请求应该返回的数据
1.如果是直接返回token,那前端是不是每个带上token的请求,都需要判断是否有token刷新返回,如果是返回刷新的token,那不是又要用新返回的token,重新发送一次请求???我觉得应该不会这么做
2.如果是返回接口应该返回的具体数据,那token怎么办?这个时候后台刷新了token,然而前端却还是保存的那个过期了的token,不过后台可以把新的token直接设置到返回的方法体中的header中,如果是这样处理,那前端怎么判断header中的token是刷新了的,难不成还是每个带token的请求前端都要去返回的数据中获取header中的token?感觉又回到了原点…..
求各位大佬帮助下,以上两种方法有没有什么比较好的解决方法,或者抛开我的两种方法,有其他合适的,符合我的需求的解决方法,小弟大学生一枚,给自己挖的坑,想填好
回答
参考微信做法
返回 token 的时候,同时返回了还有多少秒过期 ($expire 秒数)
前端保存 token 同时,记下啥时候过期 (now + $expire)
前