Php 如何在laravel中使用HTTP测试个人访问令牌
我正在办理拉威尔护照。我已经创建了个人访问令牌。现在,我想用guzzlehttp客户端测试它。我怎样才能做到这一点。 我试着这样做,但它不起作用Php 如何在laravel中使用HTTP测试个人访问令牌,php,laravel,oauth-2.0,laravel-passport,guzzlehttp,Php,Laravel,Oauth 2.0,Laravel Passport,Guzzlehttp,我正在办理拉威尔护照。我已经创建了个人访问令牌。现在,我想用guzzlehttp客户端测试它。我怎样才能做到这一点。 我试着这样做,但它不起作用 路由/web.php Route::get('/callback', function (Request $request) { $response = (new GuzzleHttp\Client)->post('http://passportauth.test/oauth/token', [ 'form_pa
路由/web.php
Route::get('/callback', function (Request $request) {
$response = (new GuzzleHttp\Client)->post('http://passportauth.test/oauth/token', [
'form_params' => [
'grant_type' => 'authorization_code',
'client_id' => 1, // Laravel Personal Access Client ID
'client_secret' => 'zeFLAy76pZdCuHuKXjPCEgY0MMhnkADYbIRKzZQz', // Replace with client secret
'redirect_uri' => 'http://passportauth.test/callback',
'code' => $request->code,
]
]);
session()->put('token', json_decode((string) $response->getBody(), true));
return redirect('/test');
//return json_decode((string) $response->getBody(), true);
});
Route::get('/test', function () {
$response = (new GuzzleHttp\Client)->get('http://passportauth.test/api/test', [
'headers' => [
'Authorization' => 'Bearer '.session()->get('token.access_token')
]
]);
return json_decode((string) $response->getBody(), true);
});
还有我的路由/api.php
Route::get('/test',function(){
return 'This is an API Endpoints';
})->middleware('auth:api');
我不认为点表示法对于
session()
,应该是session()->get(“token”)->access\u token
?'Bearer'.session()->get('token')
这样吗???session()->get(“token”)->access\u token
,就像我写的那样。。。您正在将token
设置到session中,session是一个对象,因此使用session()->get(“token”)
获取它,然后通过->access\u token
访问属性
Do add(session()->get(“token”)在你的测试中选择code>,看看它是否符合你的期望。