gpt4 book ai didi

php - Laravel Passport 打印个人访问 token

转载 作者:可可西里 更新时间:2023-10-31 22:49:17 27 4
gpt4 key购买 nike

我正在使用 Laravel 的护照包为我的其余 api 提供基于 token 的身份验证。现在,我正在使用 personal access token生成访问 token 的概念。

要为单个用户生成访问 token ,我使用以下代码生成名称为“android”的 token 。

    $user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);

// Here the access token will be stored in $token variable.
$token = $user->createToken('android')->accessToken;

// Now the $token value would be something like
//eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImMyNjI3YzU0YjFhNWIxZTFlMTdkODhmZTk1NzhjNzAzY2QyMTU0MzhlOD...

稍后我想在我的管理仪表板上显示个人访问 token ,但我很难再次获得生成的 token 。尝试了以下代码,但无法获取访问 token 。

$user = User::find(1)
dd($user->tokens())

我也尝试过使用 passport vue 元素,但它只显示访问 token 名称,而不是实际 token 。

<passport-personal-access-tokens></passport-personal-access-tokens>

请帮我解决这个问题。

谢谢

最佳答案

我认为您应该在创建用户之前或同时生成 token 并将其存储在数据库中:

添加列:

$table->string('token', 60)->unique();

保存 token :

$token = $user->createToken('android')->accessToken;

$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
'token' => $token,
]);

然后它将可用为:

$user->token;

关于php - Laravel Passport 打印个人访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41549913/

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