token超时前端主动介入思路:
首先在登录获取token时存入一个时间戳,然后在发送请求时,在响应拦截器将token注入请求头时检查token是否过期。如图所示:
问题:如何判断token是否过期
实现思路:当前时间戳-获取token时存入的时间戳 > 是否大于定义的超时时间,具体代码:
// 首先定义一个超时时间
const Timeout = 3600 // 定义一个超时时间
// 定义一个检查token超时的方法--逻辑:当前时间-缓存时间 是否大于时间差
function IsCheckTimeOut() {
var currentTime = Date.now() // 当前时间戳
var timestemp = getTimesetmp() // 缓存时间戳
return (currentTime - timestemp) / 1000 > Timeout
// 这里返回TRUE,说明超时了。返回FALSE,说明没有超时
}