【发布时间】:2020-10-10 22:21:17
【问题描述】:
我遇到了问题,希望您能帮忙:)
我正在使用 Laravel Passport 来处理我的 webApp 的身份验证。我能够毫无问题地生成访问令牌和刷新令牌。
当我尝试刷新我的令牌时出现问题。我根据 Laravel 的文档编写代码:
public function refresh_token(Request $request){
$refresh_token = $request->cookie('refresh_token');
$http = new \GuzzleHttp\Client([
'base_uri' => env('OAUTH_PWD_GRANT_BASE_URL'),
'http_errors' => false
]);
$response = $http->post('/oauth/token', [
'form_params' => [
'grant_type' => 'refresh_token',
'refresh_token' => $refresh_token,
'client_id' => env('OAUTH_PWD_GRANT_CLIENT_ID'),
'client_secret' => env('OAUTH_PWD_GRANT_CLIENT_SECRET'),
'scope' => '',
],
]);
return $this->login_helper(json_decode((string) $response->getBody(), true));
}
这是我的问题:我希望我的新访问令牌与提供的refresh_token 具有相同的范围(或者更准确地说,与refresh_token 关联的access_token)具有相同的范围。
我该怎么做?
我试图查看数据库以找到我的refresh_token,并获取关联的access_token,但不清楚如何访问refresh_token(我在我的Cookies中设置的refresh_token确实没有出现在数据库中 - 我不了解它背后的机制)。
非常感谢您的帮助!
【问题讨论】:
标签: laravel oauth laravel-passport