javaScript 删除本地cookie删不了

一、js删除本地cookie无法删除
- 今天发现自己真的蠢爆了! 以下为cookie定义: 1.设置Cookie的key   2.设置Cookie的key-value值   3.过期时间-自定义(一般在删除的时候) expires   4.路径(path)(一般定义 path=/)   5.域(domain)
  1. 在chrome console下尝试删除、设置cookie时,发现可以同时存在多个同名同值cookie。
    而且我们只能删除掉自己刚设定的cookie,不能删除,网站给我设定的cookie。以下为网上找的方法:
function setCookie(name, value, exdays) {
    var date_time = new Date();
    date_time.setTime(date_time.getTime() + (exdays*24*60*60*1000));
    // date_time.setTime(date_time.getTime()+5);   这句意思为5秒后删除cookie
    var expires = "expires="+d.toGMTString();
    document.cookie = name + "=" + value + "; " + expires;
  • 显然上面个方法我试了很多次实在是没成功

然后想到了,我当前chrome在该页面设置的cookie是不是不是和网站给我设置的cookie在一个路径下

1.2 解决问题
然后尝试修改,这次在后台页面直接修改的js:
var u_name = $(this).prev().text()  // 这个是我存的用户名
var date_time = new Date();
date_time.setTime(date_time.getTime()+1);
var expires= "expires="+ date_time.toGMTString()+";path=/";  # 单斜杠 ‘/’表示项目当前根路径
console.log("username"+"="+$(this).prev().text()+';'+expires);
document.cookie = "username"+"="+u_name+';'+expires;
  • 没错就是差的那个 ' path=/' 属性

说到这你也可以理解了,为什么在console下可以出现同名,同值cookie。
而加上 path 属性,浏览器就可以找到是哪一个路径下的cookie 去精确操作了

原文地址:https://www.cnblogs.com/shiqi17/p/9638347.html