【发布时间】:2015-02-17 02:18:32
【问题描述】:
我正在尝试撤消网络应用程序的访问权限。这是我的代码:
当用户登录时:
$scriptUri = "http:...";
$client = new Google_Client();
$client->setAccessType('online');
$client->setApplicationName('xxx');
$client->setClientId('xxx');
$client->setClientSecret('xxx');
$client->setRedirectUri($scriptUri);
$client->setDeveloperKey('xxx'); // API key
$client->setScopes(array('https://www.googleapis.com/auth/userinfo.email', 'https://www.googleapis.com/auth/userinfo.profile'));
$oauth2 = new Google_Service_Oauth2($client);
if (isset($_GET['code']) && isset($_GET["google"])){
$client->authenticate($_GET['code']);
$token = $client->getAccessToken();
$client->setAccessToken($token);
$_SESSION['google_token'] = $token;
}
这是我想撤销应用程序时的代码:
$ch = curl_init("https://accounts.google.com/o/oauth2/revoke?token=".$_SESSION['google_token'].";");
curl_exec($ch);
curl_close($ch)
结果是一个 NOT FOUND 页面,上面写着 The requested URL /v2/{ "error" : "invalid_token"} was not found on this server.
我不确定这是否是撤销访问权限的正确方法。 谢谢。
【问题讨论】:
标签: php oauth-2.0 google-api