删除cookie时遇到的坑
曾经有个“导出中”的需求,我用iframe实现下载对话框和cookie轮询验证token去解决的,但是昨天又发现了一个新问题:
因为前台需要提示导出失败的详细信息,这个信息我是在token返回0的时候去获取另外一个cookie Err。但是当上一次返回的token为0时,轮询提前结束了,事实上,这次的token服务器还没来得及返回。所以,问题是什么呢,每次请求导出数据前,需要清除上一次的cookie。
但是我在后来发现:
document.cookie =cName+"='';expires=" +new Date(+new Date()-1).toUTCString();
并未生效,而在控制台添加和删除新的cookie都没问题。
回家后查了一些资料,发现.net的cookie指定了默认的path=“/”
在二级域名的时候,前端需要在删除cookie时加上path以指定当前添加的cookie是添加到哪里。。。
所以,你需要这样做:
document.cookie =cName+"='';path=/;expires=" +new Date(+new Date()-1).toUTCString();
hi,我的新博客地址:ysha.me !!