我试图授权我的应用程序读取用户的谷歌驱动器,但一直遇到上述问题。这是我的代码:
session_start();
$client = new Google_Client();
$client->setClientId(CLIENT);
$client->setClientSecret(SECRET);
$client->setRedirectUri(REDIRECT);
$client->addScope(Google_Service_Drive::DRIVE_METADATA_READONLY);
if (! isset($_GET['code'])) {
$auth_url = $client->createAuthUrl();
header('Location: ' . filter_var($auth_url, FILTER_SANITIZE_URL));
} else {
$client->authenticate($_GET['code']);
$_SESSION['access_token'] = $client->getAccessToken();
//$redirect_uri = 'http://'.$_SERVER['HTTP_HOST'];
//header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}
据我所知,我的申请已经收到代币,并且已经兑换。我的问题是如何访问刷新令牌,并将其提供给应用程序?我也读过clearToken(context,token),它起到了作用,但我不知道在我的代码中在哪里实现它,也不知道用什么上下文参数实现它。
"收到一个代币,并且已经兑换"你是说访问码吗?
假设您请求离线访问,那么兑换访问代码将返回一个刷新令牌,您应该在需要时安全存储该令牌。
如果您忘记存储刷新令牌,则需要撤销访问权限并重新启动。