我试图完全删除在存在特定网址参数时设置的Cookie。
我试过了:
function delete_cookie (cookie_name) {
var cookie_date = new Date ();
cookie_date.setTime(cookie_date.getTime()-1);
document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
delete_cookie('MyCookie');
它将cookie值设置为null
,但cookie本身或至少cookie的名称保留在浏览器中,这样当再次打开相同的URL时,它不会更新来自{的cookie值{1}}到null
也不是第二个创建了URL值的Cookie。
要重新设置新Cookie,我必须右键单击Cookie名称(在Chrome中)并选择删除。这样,Cookie名称及其值XXX
将被真正删除,否则将保持null
值。
如何完全删除Cookie文件,而不是仅使用javascript将其设置为null
?
**新信息**
我应该提一下,我还有以下函数从URL参数中获取cookie并将其从第一页保留到最后一页(在将cookie值添加到另一个URL之后应将其删除)。第二页将链接转换为URL参数不再可见的会话
以下是代码:
null
有什么想法吗?
答案 0 :(得分:1)
删除cookie的最简单方法是:
function delete_cookie( name ) {
document.cookie = name + '=; path=/; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
更新:必须添加路径才能让它发挥作用。
Here's a Plunk showing it working. Plunk中的顶部按钮使用库来设置/查看/删除空cookie。使用底部按钮删除旧学校方法(上图),然后使用库显示按钮验证它已消失。