如何从谷歌撤销 OAuth 提供的令牌?节点JS
Posted
技术标签:
【中文标题】如何从谷歌撤销 OAuth 提供的令牌?节点JS【英文标题】:How to revoke token provided by OAuth from google? NodeJS 【发布时间】:2017-11-30 13:29:44 【问题描述】:我已经使用 oauth2 从我的 NodeJS 应用程序连接到 google plus,但是如何撤销令牌/断开连接?我在 NodeJS 的文档中找不到任何内容。
【问题讨论】:
【参考方案1】:如果 access_token 过期,revokeToken 方法返回“Invalid Token Error”。这时候我们可以通过 refresh_token (如果你已经获取了它并把它放在一个持久化存储中)。所以代码的变化如下
let token = oauth2Client.credentials.refresh_token;
oauth2Client.revokeToken(token, function(err, body)
//Do something here after checking if err is set or not
);
【讨论】:
【参考方案2】:您可以使用revokeToken
函数从google.auth.OAuth2
对象撤销令牌:
oauth2Client.revokeToken(token, function(err, body)
);
您还拥有revokeCredentials
函数,用于清除凭证对象并撤销其中的访问令牌:
oauth2Client.revokeCredentials(function(err, body)
);
【讨论】:
以上是关于如何从谷歌撤销 OAuth 提供的令牌?节点JS的主要内容,如果未能解决你的问题,请参考以下文章
如何以管理员用户身份撤销用户的访问令牌和刷新令牌?在 Oauth2 中使用 JWT