首先请不要将此标记为重复,因为这与服务器端(PHP)有关,而不是与其他帖子一样与客户端有关。
我正在尝试通过 Oauth.io 刷新 Google API 的令牌。我关注了这个和许多其他帖子,但没有运气。不幸的是 Oauth.io 文档不是最好的。我在 Twitter 和 Facebook 上没有这个问题,只有 Google。
当我第一次连接时,我得到了 refresh_token。然后我需要每天进行一次 API 调用。
{
"access_token":"xxx",
"token_type":"Bearer",
"expires_in":3600,
"refresh_token":"xxx",
"id_token":"xxx",
"provider":"google_analytics"
}
问题是如何通过 Oauth.io 刷新 Google 令牌?
文档说:
// 如果需要,auth 方法会自动刷新令牌 $request_object = $oauth->auth('facebook', array( 'credentials' => $credentials ));
和点在这里,但它并没有解决问题。它所做的只是让我得到 refresh_token 值作为响应。
更新
根据这篇文章,我试图做:
$request_object->post('https://oauth.io/auth/access_token', array(
'code' => 'xxx', // here I tried access_token, refresh_token
'key' => 'xxx',
'secret' => 'xxx',
));
但我得到的只是
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"
}
}
依然没有。