我正在使用 Laravel Passport API 通过个人访问令牌在 Laravel 和外部“代理”之间进行通信:https://laravel.com/docs/5.5/passport#personal-access-tokens
您可以创建代币:通过
$token = \Auth::user()->createToken('name')->accessToken;
($token 那么只保存令牌本身,而不是对象)
如何获得新创建的代币的
token()->id
?
我需要获取 ID 将其存储在数据库中以与其他表建立关联。
您应该拆分代币创建:
首先创建对象,这将返回一个 Laravel\Passport\PersonalAccessTokenResult 对象:
$tokenobj = \Auth::user()->createToken('name');
然后您可以通过以下方式获取accessToken本身:
$token = $tokenobj->accessToken;
代币 ID 通过:
$token_id = $tokenobj->token->id;
使用createToken时有没有办法自定义client_id? 我的代码: $user = User::find(1); $token = $user->createToken('xx',[],['client_id' => 2]); 预期结果:oauth_access_tokens表中的client_id oauth_access_to表中的client_id (client_id = 2)
实际结果:client_id = 13 运行passport:install时新增