简体   繁体   English

通过 sanctum 令牌获取用户

[英]get user by sanctum token

I have a token like 1|bTNlKViqCkCsOJOXWbtNASDKF7SyHwzHOPLNH and I wanna find the user by this token.我有一个像1|bTNlKViqCkCsOJOXWbtNASDKF7SyHwzHOPLNH这样的令牌,我想通过这个令牌找到用户。

note: I can not use auth()->user in a specific controller.注意:我不能在特定的 controller 中使用auth()->user thanks in advance提前致谢

Laravel sanctum use a polymorphic relationship. Laravel sanctum 使用了多态关系。 So, you need to read the documentation about how to retrieve data in that relation.因此,您需要阅读有关如何在该关系中检索数据的文档 It's something like this.是这样的。

use Laravel\Sanctum\PersonalAccessToken;

$token = PersonalAccessToken::where(...);
$user = $token->tokenable;

The following code will convert a personal token and return the user:以下代码将转换个人令牌并返回用户:

use Laravel\Sanctum\PersonalAccessToken;

$bearerToken = "1|bTNlKViqCkCsOJOXWbtNASDKF7SyHwzHOPLNH";

$token = PersonalAccessToken::findToken($bearerToken);

if (!$token) {
    dd("Error: Token not found");
}

$user = $token->tokenable;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM