OAuth 2.0刷新令牌不可用?

时间:2014-09-28 12:56:42

标签: php oauth google-oauth

我有一个基于网络的应用程序,它使用Google OAuth2.0作为登录框架。直到昨天它还能很好地工作。访问令牌过期后,applcation无法获取刷新令牌。

如何删除以下错误?

**PHP Fatal error**: Uncaught exception 'Google_AuthException' with message 'The OAuth 2.0 access token has expired, and a refresh token is not available.

以下是我的代码:

if (isset($_GET['code'])) {

  $client->authenticate($_GET['code']);
  $_SESSION['access_token'] = $client->getAccessToken();
  header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}


if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
  $client->setAccessToken($_SESSION['access_token']);
}

1 个答案:

答案 0 :(得分:0)

OAuth2访问令牌可能已过期,您必须使用"刷新令牌" - 它总是带有访问令牌。