我有一个内部方法,用于如下生成承载令牌。
$response = $client->post('https://core-site.test/oauth/tokens' , [
'form_params' => [
'client_id' => 5,
// The secret generated when you ran: php artisan passport:install
'client_secret' => 'HxLB5LVi3HhHxYkoHVZinoYUz5Ab3HnbWmiB1KBd',
'grant_type' => 'client_credentials',
'scope' => '*',
]
]);
然后,我在内部api调用中使用从此请求返回的承载令牌。该方法肯定会返回不记名令牌。通过使用以下代码,我将承载令牌包含在下一个请求中。
$request = Request::create($url, 'GET');
$request->headers->set('Authorization', 'Bearer '. $this->generateToken());
$request->headers->set('Accept', 'application/json');
try {
$response = app()->handle($request);
但是,执行此请求时,响应为401。下面显示了我尝试访问的路由上的中间件。
Route::group(['middleware' => 'auth:api'], function(){
Route::get('/user/{id}', 'UserApiController@show');});
当我生成了一个承载令牌并在我的请求中使用它时,为什么会返回401?