gpt4 book ai didi

Laravel 7.0 - tymon/jwt-auth - 检查 token 是否有效

转载 作者:行者123 更新时间:2023-12-05 08:18:34 26 4
gpt4 key购买 nike

尝试使用 tymon/jwt-auth (JWT) 在 laravel 安装中实现登录端点。登录、注销、获取用户数据工作正常。我想要一个端点来检查 Bearer Token。有一个简短的方法可以通过以下方式实现这一点:

Route::get('/valid', function () {
return 1;
})->middleware('auth:api');

如果 token 有效,则 HTTP 返回代码 == 200,但如果无效,则返回 401 代码。由于端点正在检查 token 而不是经过身份验证的通信,我宁愿让 Controller 返回关于有效 token 的 true/false 200 - OK。

我看了一下模块的“幕后”,这就是我得到的结果(不工作):

            $tokenKey = $request->bearerToken();
$jws = \Namshi\JOSE\JWS::load($tokenKey);

$jwsSimple = new SimpleJWS($jws->getHeader());
$jwsSimple::load($tokenKey);
$jwsSimple->setPayload($jws->getPayload());
$jwsSimple->setEncodedSignature(explode('.', $tokenKey)[2]);

$tmpVal = $jwsSimple->isValid($tokenKey);

有没有更好的方法来实现这个目标?我假设应该有一个服务提供商,但无法弄清楚如何实现它。提前谢谢你。

最佳答案

你可以删除 auth:api 中间件,然后有类似的东西:

return response()->json([ 'valid' => auth()->check() ]);

关于Laravel 7.0 - tymon/jwt-auth - 检查 token 是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60827027/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com