has*_*rsa 6 php google-api google-api-php-client
我正在使用Google API Client Library for PHP进行离线身份验证,但是当我使用此代码时:
$this->google->refreshToken($result["google_refresh_token"]));
Run Code Online (Sandbox Code Playgroud)
它返回NULL.
$this->google
指的是Google_Client类的一个实例.
任何人都知道这可能是什么?
如果我尝试更改给定的刷新令牌,则会返回Google异常错误,因此它应该是有效的令牌.
谢谢!
编辑:
'client_id' => 'myclientid',
'client_secret' => 'myclientsecret',
'redirect_uri' => 'mypage',
'developer_key' => 'mydeveloperkey',
// Other parameters.
'access_type' => 'offline',
'approval_prompt' => 'force',
Run Code Online (Sandbox Code Playgroud)
也许这有助于你
我有相同的问题已经有一段时间了.对我来说,这是因为,出于某种原因,Google只在您第一次请求令牌时向您发送刷新令牌.因此,您必须确保为该用户存储该刷新令牌,因为Google不会再给您.
对于发展来说,这可能是一个真正的痛苦 您可以让Google向您发送新的刷新令牌,但您要做的是取消授权您通过应用程序授权的任何帐户.您可以在Google安全设置中执行此操作.
希望这可以帮助!
我现在使用一种非常简单的方法来避免该refresh_token()
方法。我只是保存了第一个请求的整个JSON响应,并将其提供给该setAccesToken()
方法。如果访问令牌过期,它将自动从给定的JSON获取一个新令牌。
归档时间: |
|
查看次数: |
3683 次 |
最近记录: |