首先请不要将其标记为重复,因为这与服务器端(PHP)有关,而不是与客户端相关的其他帖子。
我尝试通过Oauth.io刷新Google API令牌。我跟着this和其他许多帖子,但没有运气。不幸的是,Oauth.io文档不是最好的。我不会在Twitter和Facebook上遇到这个问题只有谷歌。
我第一次连接时得到了refresh_token。然后我需要每天进行一次API调用。
array(4) {
'status' =>
string(5) "error"
'code' =>
int(401)
'message' =>
string(70) "Bearer token invalid. Follow the oauth2-token link to get a valid one!"
'data' =>
array(1) {
'code' =>
string(17) "UnauthorizedError"
}
}
问题是如何通过Oauth.io刷新Google令牌?
//如果需要,auth方法会自动刷新令牌 $ request_object = $ oauth-> auth(' facebook',array( '凭证' => $凭据 ));
和点here,但它并没有解决问题。它所做的只是我在响应中获得了refresh_token值。
更新
根据this帖子,我试图这样做:
cd $JENKINS_HOME
git add --all
git commit -m "Automated backup commit: $BUILD_TIMESTAMP"
git push
但我得到的只是
{{1}}
仍然没有。
答案 0 :(得分:0)
最后我发现了它。您可以使用以下命令刷新access_token:
$this->oauth = new OAuth();
$this->oauth->initialize($publicKey, $secretKey);
或
$request_object = $oauth->auth('google_analytics', array(
'credentials' => $credentials,
'force_refresh' => true
));
可以找到两个答案here。我整天都没有看到它。
我更喜欢使用第一个解决方案,因为我想保存新的access_token,以便我以后可以重复使用它。而且你需要记住你需要传递refresh_token,你使用第一个access_token,以及最后一个access_token来刷新access_token - 在用户撤销访问权限之前,refresh_token不会改变。