我正在开发一个google drive文件上传Rest API。用户将权限授予我的google drive应用程序。现在,我的应用程序中有一个登录-注销系统,因此用户可以将文件上传到不同的帐户。
从技术上讲,我正在获得一个关于用户身份验证的"refresh_token",我将使用它为每个离线请求生成"access_token"。我已经在数据库中存储了'refresh_token'。当用户注销时,我会将其从数据库中删除。
如果用户使用a@gmail.com登录,则允许访问我的谷歌驱动器应用程序,并在上传一些文件后注销。然后该用户再次尝试使用相同的帐户登录,它不会生成"refresh_token“或请求应用程序权限,因为它已经由用户给予。
我想在注销时删除用户的应用程序权限。或者我想通过新的身份验证和权限来获得新的"refresh_token"。
请给我这个问题的指导。
提前谢谢你。
发布于 2017-01-04 21:22:31
如何刷新令牌?
您将使用$client->refreshToken($refreshToken),如下所示
if ($client->isAccessTokenExpired()) {
$refreshToken = $client->getRefreshToken();
$client->refreshToken($refreshToken);
$newAccessToken = $client->getAccessToken();
$newAccessToken['refresh_token'] = $refreshToken;
file_put_contents($credentialsPath, json_encode($newAccessToken));
}尝试在github上的google api php library上检查示例。
https://stackoverflow.com/questions/41440697
复制相似问题