javascript – 如何在页面刷新后注销用户?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在页面刷新后注销用户?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在关注 Google’s guide退出用户.

考虑到刷新页面后未定义gapi.auth2,我正在做:

if (gapi.auth2) {
    var auth2 = gapi.auth2.getAuthInstance();
    auth2.signOut();
} else {
    gapi.load('auth2',function () {
        gapi.auth2.init({
            client_id: 'myAppID',cookiepolicy: 'single_host_origin'
        }).signOut();
    });
}

但是我得到了未捕获的异常:只有在else块中启动令牌管理器后才能调用方法.

我也尝试将auth实例存储在本地存储中,但这样做会导致一些循环对象值错误,同时对其进行字符串化.

一个可行的解决方案是做一个

document.location.href = "https://www.google.com/accounts/logout?continue=https://appengine.google.com/_ah/logout?continue=myUrl";

但是,除了执行不需要的重定向之外,不会仅仅记录我的应用程序用户,这会影响他所记录的所有Google服务.

有不同的方法吗?

解决方法

有一个更简单的方法,你只需要在调用gapi.auth2.init后调用.then
gapi.load('auth2',function () {
   var auth2 = gapi.auth2.init({
       client_id: 'myAppID',cookiepolicy: 'single_host_origin'
   });
   auth2.then(function(){
        // this get called right after token manager is started
        auth2.signOut();
   });
});

猜你在找的JavaScript相关文章