// 登录时 生成 token
$old_token = JwtToken::generateToken($admin->toArray());
// $old_token 过期时间内 刷新token
$new_token = JwtToken::refreshToken();
// 刷新之后 $new_token $old_token 新旧 两个token 经过验证 都是可以用的
请求 这个插件 或 jwt 能否实现 刷新token之后 原来的token 失效
或者 刷新之后 让 旧token 有一定的 宽限时间 ,宽限时间 过了之后就 失效(验证不通过)
设置宽限时间是为了 解决并发请求问题
refreshToken 每次刷新后,加入一个黑名单set就可以。
可以这样理解,refreshToken 是xxx天内没有没有登录就是时失效。
还是需要 缓存或数据库 来配合,解决 jwt 在服务端的无状态的设计
refresh_token
就是给予 访问access_token
过期之后使用,如果你在未过期刷新调用,则旧的就是可以使用https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
微信公众号的获取Access token的第二条,我的理解应该是这个意思吧
@Tinywan 刷新之后 能让 旧token 失效的基础之上,才有 宽限时间
假定 刷新之后 旧token 会立刻失效,
在刷新的同时或刷新后的瞬间 会有(并发)请求会携带 旧token 进行请求,
这个时候,希望 旧 token 能在一个很短的时间内 继续有效,
这个 “很短的时间” 就是 旧 token 的 宽限时间
描述的很不专业,不知道是否能 看懂
宽限时间 主要是想用来 解决刷新token 及 客户端还没替换新token 这个时间区间 发送的(并发)请求,带来的一些问题
稍微研究了下那个refresh token,好像如果能拿到token,refresh token 会一直通过刷新一直可以登录
@Van Chin
leeway
这个配置参数是否可以解决你的问题?