【发布时间】:2012-08-29 10:54:31
【问题描述】:
我正在使用带有 php 的 Gooogledrive Api。使用它我已经从凭据部分检索了刷新令牌。访问令牌在 3600 秒后过期。我的问题是如何从这个刷新令牌中获取新的访问令牌。我使用了中给出的方法Google php客户端库。我调用了apiclient的refreshtoken('refreshtoke')函数。我的代码如下
$client = new apiClient();
$client->setClientId('my-client-id');
$client->setClientSecret('my client-secret-key');
$client->setRedirectUri('my redirect uri');
$client->refreshToken('MY-retrieved-refresh-token');
但我收到以下错误:- 未捕获的异常 'apiAuthException' 带有消息 '刷新 OAuth2 令牌时出错,消息:'{ "error" : "invalid_grant" }.**
请帮助我。一切正常。但是访问令牌在 3600 秒后过期并且不刷新
【问题讨论】:
-
您是否设置了访问和刷新令牌?我没有看到 $client->SetAccessToken($tokens) 行,其中 $tokens 将是 jSON 中的访问和刷新令牌。
-
谢谢vicrabb。我明白了。
-
是那个问题还是你还有问题?
-
嗨@vicrabb,我遇到了同样的问题,你能帮我举个例子吗,网上有很多东西,但没有一个是清楚的。非常感谢提前!
-
当需要刷新token时,需要进行设置。如果您没有放置 $client->SetAccessToken($tokens) 行(使用 $tokens 在 jSON 中保存您的访问和刷新令牌),则您没有授权来刷新它们。我没有示例,因为我不使用 refreshToken() 函数。
标签: php google-drive-api