3 回答

TA贡献1797条经验 获得超4个赞
从表面上看,它看起来还不错-如果您调用eraseCookie()从中读取的每个cookie document.cookie,那么所有cookie都将消失。
尝试这个:
var cookies = document.cookie.split(";");
for (var i = 0; i < cookies.length; i++)
eraseCookie(cookies[i].split("=")[0]);
所有这些都带有以下警告:
JavaScript 无法删除设置了HttpOnly标志的cookie 。

TA贡献1848条经验 获得超2个赞
没有删除浏览器Cookie的100%解决方案。
问题在于,cookie不仅通过其键“名称”而且还通过其“域”和“路径”来唯一标识。
如果不知道Cookie的“域”和“路径”,就无法可靠地删除它。无法通过JavaScript的获得此信息document.cookie。也无法通过HTTP Cookie标头使用!
但是,如果您知道Cookie的名称,路径和域,则可以通过设置一个具有过期日期的空Cookie来清除它,例如:
function clearCookie(name, domain, path){
var domain = domain || document.domain;
var path = path || "/";
document.cookie = name + "=; expires=" + +new Date + "; domain=" + domain + "; path=" + path;
};
没有找到匹配的内容?试试慕课网站内搜索吧
添加回答
举报