首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何撤销标识API令牌( Chrome扩展)

如何撤销标识API令牌( Chrome扩展)
EN

Stack Overflow用户
提问于 2020-07-14 13:25:58
回答 2查看 860关注 0票数 2

我想在Google中添加一个登录,并在我的Chrome扩展中添加一个注销按钮。

使用chrome.identity.getAuthToken在中使用符号的一种技术是用本教程描述的。效果很好!单击该按钮时,它将显示一个用于身份验证和授权的弹出。

但是我应该如何实现注销按钮呢?

我尝试在我的removeCachedAuthToken注销按钮的单击处理程序中使用方法。这样,登录功能就不能像预期的那样工作了。之后,当我再次按下按钮时,我直接得到了一个新的令牌,而没有弹出窗口要求用户验证和授权我的扩展。我希望用户能够通过注册更改他们的帐户。用这种技术,那是不可能的。我应该如何实现注销功能以允许这样做?

EN

Stack Overflow用户

发布于 2022-09-19 14:53:10

正如在这个答案中提到的,您可以使用https://accounts.google.com/o/oauth2/revoke?token=" + current_token)来允许用户撤销对api的访问。

以下是相同的功能:

代码语言:javascript
复制
function revokeToken() {
    user_info_div.innerHTML = "";
    chrome.identity.getAuthToken({ interactive: false }, 
      function (current_token) {
        if (!chrome.runtime.lastError) {
          // @corecode_begin removeAndRevokeAuthToken
          // @corecode_begin removeCachedAuthToken
          // Remove the local cached token
          chrome.identity.removeCachedAuthToken({token: current_token}, function(){});
          // @corecode_end removeCachedAuthToken

          // Make a request to revoke token in the server
          var xhr = new XMLHttpRequest();
          xhr.open(
          "GET", 
          "https://accounts.google.com/o/oauth2/revoke?token=" + current_token);
            
          xhr.send();
          // @corecode_end removeAndRevokeAuthToken

          // Update the user interface accordingly
          changeState(STATE_START);
          sampleSupport.log("Token revoked and removed from cache. " + 
            "Check chrome://identity-internals to confirm.");
        }
    });
}
票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62896294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档