当token失效之后

Laravel中应用JWT-Auth境遇贰个标题,即token如何刷新。

生机勃勃开头不老子@楚我的计划观念,看了无数issue之后,稳步明白jwt-refresh怎么着使用。

建三个路由,举个例子“auth/refresh-token”
,能够本着有些方法,也足以平昔写个无名函数。

$app->post('auth/refresh-token', ['middleware' => 'jwt.refresh', function() { try { $old_token = JWTAuth::getToken(); $token = JWTAuth::refresh; JWTAuth::invalidate; } catch (TokenExpiredException $e) { throw new AuthException( Constants::get('error_code.refresh_token_expired'), trans('errors.refresh_token_expired'), $e); } catch  { throw new AuthException( Constants::get('error_code.token_invalid'), trans('errors.token_invalid'), $e); } return response()->json;

当token失效之后,访谈那几个地址,把旧token带上,会获得一个新的token。自身将新token保存,访谈api时使用新token。如此频仍。

尽管token的卓有功能超短,暗许是二个钟头,不过刷新时间长达八个星期,还算能够,总比重复登陆来得平价。

顾客端登陆之后假若保存token,减弱了被拿走客商名密码的高危害。

其大器晚成地点有个bug,正是旧token纵然不可能再利用,可是却得以用来得到新token。那个问题在0.6版中被修复。如若发急这么些主题材料能够运用0.6版。

一同始以为三个token刷新之后方可随着用,原本是换个新token,不精晓跟着用的思虑是不是行得通。

如上那篇Laravel
解决JWT-Auth刷新token的难题正是作者分享给我们的全体内容了,希望能给大家二个参照,也盼望大家多多指教脚本之家。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website