catch (TokenExpiredException $e) {
// 尝试刷新token
// uapi_exit('登录信息已过期,请重新登陆', $data = [], $other = '', $code = '4001');
//自动登录 在响应头的header上
try {
$this->auth->setRefresh();
$token = $this->auth->refresh();
//这个可以去掉 多余的
$token = $token ?: $this->auth->refresh();
$this->auth->setToken($token);
//这个我测试存的缓冲 可以不用管
Cache::set('jwt_token','Bearer '.$token,604800);
if (in_array('cookie', Config::get('jwt.token_mode'))) {
Cookie::set('token', $token);
}
if (in_array('header', Config::get('jwt.token_mode'))) {
header('Authorization:Bearer '.$token);
}
//重新给解密的信息赋值
$data = JWTAuth::auth();
$request->account_info = $data;
return $next($request);
} catch (TokenBlacklistGracePeriodException $e) { // 捕获黑名单宽限期
uapi_exit('登录信息已过期,请重新登陆', $data = [], $other = '', $code = '4001');
}
}