我正在使用Laravel的护照包为我的其他api提供基于令牌的身份验证.现在,我正在使用
personal access token概念来生成访问令牌.
要为单个用户生成访问令牌,我使用下面的代码生成名为“android”的令牌.
$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...
稍后我想在我的管理仪表板上显示个人访问令牌,我很难再次获得生成的令牌.尝试下面的代码,但无法获取访问令牌.
$user = User::find(1) dd($user->tokens())
我也尝试使用护照vue元素,但它只显示访问令牌名称,而不是实际令牌.
<passport-personal-access-tokens></passport-personal-access-tokens>
请帮我解决这个问题.
谢谢
我认为您应该在创建用户之前或同时生成令牌并将其存储在数据库中:
添加列:
$table->string('token',60)->unique();
保存令牌:
$token = $user->createtoken('android')->accesstoken; $user = User::create([ 'name' => $data['name'],'token' => $token,]);
然后它将作为:
$user->token;