首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >试图清除springboot应用程序中域中所有页的cookie。

试图清除springboot应用程序中域中所有页的cookie。
EN

Stack Overflow用户
提问于 2018-05-30 11:11:19
回答 1查看 164关注 0票数 1

我试图使用注销函数清除域中的所有cookies,域为localhost:8080

当我试图从cookie中清除dashboard时,cookie将被成功清除。但是,当我从editprofile导航到dashboard并试图清除cookie时,cookie不会被清除,因为cookie变量{{user.username}}仍然显示在索引上。

以下是我的尝试:

代码语言:javascript
运行
复制
$rootScope.logout = function() {
    delete $rootScope.user;
    $cookies.remove('token');
    //$location.path("/");
    $(location).attr('href', '/index');
    return;
};

下面是在索引页面中定义的内容

代码语言:javascript
运行
复制
<a ng-show="user" class="item active" href="/dashboard">welcome {{user.username}}</a>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-30 11:19:43

要删除您应该使用的cookies

$cookies.remove("cookieName")

因为您的不是single page application,所以您应该从每一页中获取remove cookies

$cookies.remove(v, {path: '/yourpage'});

这样您就可以删除所有的cookies

代码语言:javascript
运行
复制
var cookies = $cookies.getAll(); 
angular.forEach(Object.keys(cookies), function (v, k) { 
        $cookies.remove(v, {path: '/yourpage'}); 
}); 

代码:

代码语言:javascript
运行
复制
$rootScope.logout = function() { 
    delete $rootScope.user; 
    var cookies = $cookies.getAll(); 
    angular.forEach(Object.keys(cookies), function (v, k) { 
        $cookies.remove(v, {path: '/index'}); 
        $cookies.remove(v, {path: '/editprofile'}); 
        $cookies.remove(v, {path: '/'}); 
    }); 

    $cookies.remove("token", {path: '/index'}); 
    $cookies.remove("token", {path: '/editprofile'}); 
    $cookies.remove("token", {path: '/'}); 
    $(location).attr('href', '/index'); 
    return; 
};
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50603193

复制
相关文章

相似问题

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