我正试图在他过期后获得一个新的访问令牌。我已将收到的信息保存在银行中,作为第一次客户访问的回报:
{"access_token":"TOKEN","refresh_token":"TOKEN","token_type","承载","expires_in": 3600,"创建": 1320790426}
令牌到期后,我需要申请一个新的令牌,我这样做:
$client = new Google_Client();
$client->setApplicationName(APPLICATION_NAME);
$client->setScopes(SCOPES);
$client->setAuthConfigFile(CLIENT_SECRET_PATH);
$client->setAccessType('offline');
$token['access_token'] = $db->dados[0]['use_access_token'];
$token['refresh_token'] = $db->dados[0]['use_refresh_token'];
$token['token_type'] = $db->dados[0]['use_token_type'];
$token['expires_in'] = $db->dados[0]['use_expires_in'];
$token['created'] = $db->dados[0]['use_created'];
$client->setAccessToken(json_encode($token));
if ($client->isAccessTokenExpired()) {
echo "Expired !";
$client->refreshToken($client->getRefreshToken());
//$accessToken = $client->authenticate($authCode);
} else {
...
}
问题是总是返回以下错误:刷新OAuth2令牌时出错,消息:
{“错误”:“无效的授权”}
$client->refreshToken($refreshToken);
$newtoken=$client->getAccessToken();
echo $newtoken."</br>";
我使用Google Calendar API在fullcalendar上显示事件(因此在我的视图中使用json对象)。我使用codeigniter php框架,控制器中有几个函数来创建新的客户机,然后在oauth2callback()函数中使用它来将代码交换为access_token,然后开始调用gcalendar()和gCalendar_events中的服务。我已经将accessType设置为脱
我面临一个问题,以刷新谷歌访问令牌在服务器端。 我从谷歌认证服务器得到的响应只是403状态代码。信息是这样的 仅仅为了刷新访问令牌,在我的服务器上使用SSL是强制性的吗?它已经在我的本地服务器上测试过,没有附加任何SSL到它。
我想使用谷歌作为OIDC协议的id提供商。我有一个简单的应用程序。它启动,正确地重定向到谷歌,然后返回到应用程序,打印用户详细信息并将其存储在会话中。但是,这种身份验证似乎来自id令牌,并且只有1h的过期时间 我的YML:
调用execute方法时,它会引发以下异常: 谁能指出我哪里做错了?我能够从谷歌oAuth UI获得访问令牌。
在我的Java/Ionic2应用程序中,我通过REST服务请求使用刷新令牌对Google Drive进行身份验证,然后使用access_type=offline,如下所述:https://developers.Google.com/identity/protocols/oauth2webserver#refresh。 服务器响应200 OK,所以它给我一个刷新和一个访问令牌,只是在我第一次请求访问
(联系人和日历有不同的代币) 同步脚本: $AccesStoken是一个序列化字符串,如下所示: 我做错了什么? 有趣的是,对于联系人来说,同步一直都很好(访问令牌的属性与日历同步中的属性相同)