【问题标题】:can't get refresh access token from google in live server无法从实时服务器中的谷歌获取刷新访问令牌
【发布时间】:2015-05-28 10:41:25
【问题描述】:

我正在创建一个谷歌应用程序来获取用户谷歌帐户数据。当我在本地使用 access_type = 'offline' 的 oauth 2 时,它会要求离线访问权限,我可以获得刷新访问令牌。但是,如果我对我的实时服务器使用相同的代码,它不会要求离线许可,我也无法获得刷新令牌。我正在为我的 laravel 应用程序使用 oriceon oauth 5 包。我确实喜欢关注

    $googleService = OAuth::consumer('Google');
    $googleService->setAccessType('offline');` 

您的建议会对我有所帮助。谢谢你

【问题讨论】:

    标签: google-api laravel-5 google-api-php-client google-api-console


    【解决方案1】:

    我找到了答案,实际上该应用程序将我的 access_token 存储在我的计算机 cookie 中,并且每次使用会话时都会发送我的密钥,因此我无法获取刷新令牌。所以你需要做的是,你需要在你的重定向uri中添加一个名为approval_prompt的选项作为强制(redirect_uri/approval_prompt=force)。每次应用程序调用时,它都会询问离线访问令牌。检查以下链接以供参考

    support approval_prompt: force to get new `refresh_token

    Why does Google OAuth2 re-ask user for permission when i send them to auth url again

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-20
      • 2021-01-29
      • 1970-01-01
      • 2014-03-31
      • 1970-01-01
      • 2019-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多