如何使用Google撤销Oauth令牌'的Javascript API

How to revoke Oauth token by using Google's Javascript APIs?

本文关键字:Javascript API 令牌 何使用 Google 撤销 Oauth      更新时间:2023-09-26

在我的(客户端AngularJS)web应用程序中,我使用Google API的Oauth让用户登录

        gapi.auth.authorize({
            client_id: clientId,
            scope: scopes,
            immediate: true 
        }, handleAuthResult);

现在我想让用户也注销。

我发现我可以通过使用HTTP请求来完成,如中所述

https://developers.google.com/+/web/登录/断开

但是,由于我使用Javascript API进行登录,我想也使用Javascript进行注销(即撤销访问令牌)

有可能吗?如果是,如何?

EDIT:我精确地说,我的目标不是通过jQuery使用HTTP请求,而是更类似于登录的东西,例如:

gap.auth.signout(..

Google GAPI库没有这样的方法。如果您不喜欢jQuery,那么用XMLHttprequest替换$.ajax并不难。

确保你理解"注销"(你的谷歌账户)和撤销访问令牌之间的区别。它们不是一回事。

在会话中,典型的顺序是:-

1/检查会话对象,看它是否包含用户对象。

1a/如果是,则用户已"登录"

1b/如果没有,请使用OAuth来发现用户,在用户数据库中查找他,并将他的用户对象存储在会话中

要注销,只需从会话中删除用户对象即可。

对于OAuth世界中的用户/会话管理,该技术有许多变体和替代方案。这只是一种方法。