首页 » 技术分享 » 删除所有cookie或者清空所有cookie值

删除所有cookie或者清空所有cookie值

 

前面有转载过一篇关于设置获取删除cookie的文章,文章虽好但是还是有一点美中不足的,比如今天要讲的删除所以cookie;

在实际开发删除所有cookie中昌子遇无论使用网上的各种删除办法就是没有办法删除cookie,本人的项目cookie是从请求接口传下来的cookie 上图

本人在网上找了各种大神的清除办法,理论上都是没有问题的,方法确实都可以删除,只是在实际项目中缺少点东西 所以导致清除失败。

解决思路:加上路径(path)  跟Domain

方法一:清除所有

var cookies = document.cookie.split(";");
var domain = '.'+location.host;
console.log(cookies);
    for (var i = 0; i < cookies.length; i++) {
    var cookie = cookies[i];
    var eqPos = cookie.indexOf("=");
    var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
    document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT; Domain="+domain+"; path=/";
    }
if(cookies.length > 0)
{
    for (var i = 0; i < cookies.length; i++) {
    var cookie = cookies[i];
    var eqPos = cookie.indexOf("=");
    var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
    document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT; Domain="+domain+"; path=/";
    }
}

结果

方法二:清空value

var domain = '.'+location.host;
var keys = document.cookie.match(/[^ =;]+(?=\=)/g);
if(keys) {  
for(var i = keys.length; i--;) {
    var date=new Date();
    date.setTime(date.getTime()-10000);
    document.cookie=keys[i]+"=; expire="+date.toUTCString()+"; Domain="+domain+"; path=/";
        } 
} 

结果:

总结:设置Cookie时怎么写的,删除cookie时就怎么写。对于请求的cookie填写对应的Domain以及path。

转载自原文链接, 如需删除请联系管理员。

原文链接:删除所有cookie或者清空所有cookie值,转载请注明来源!

0