【问题标题】:Laravel Passport refresh_token with same scope具有相同范围的 Laravel Passport 刷新令牌
【发布时间】: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


    【解决方案1】:

    好的,经过测试,我意识到当您将'scope' => '' 放入刷新令牌的请求中时,您会得到相同的范围。 :-)

    我之前应该检查过(我认为它返回一个空范围 - 虽然这是一个奇怪的实现 - 非常有用,但很奇怪)^^

    【讨论】:

      猜你喜欢
      • 2020-09-14
      • 2018-02-01
      • 2020-09-16
      • 2018-04-23
      • 2019-08-27
      • 2020-04-07
      • 2021-01-18
      • 2019-01-25
      • 1970-01-01
      相关资源
      最近更新 更多