我使用以下功能清除所有可行的Cookie。
据我所知,这也正在清除PHPSESSID
。我想仅保留一个cookie。
我添加了一行:if (name == "PHPSESSID") {...
...尝试捕获并跳过,更改cookie名称PHPSESSID
,但由于某种原因它没有捕获它。
是否有明确的理由说明它没有捕获,或者是否有更好的方式来清除所有Cookie,除了" PHPSESSID
"?
功能:
function clearCookies() {
var cookies = document.cookie.split(";");
for(var i=0; i < cookies.length; i++) {
var equals = cookies[i].indexOf("=");
var name = equals > -1 ? cookies[i].substr(0, equals) : cookies[i];
if (name == "PHPSESSID") {
alert("yes");
}else{
document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
alert(name);
}
}
}
答案 0 :(得分:1)
您好我通过使用DevTool的控制台日志而不是cookie查看器找到了答案。由于某种原因,PHPSESSID前面有一个空间。所以 &#34; PHPSESSID&#34;的工作原理。
此处的解决方案:在控制台日志中输出它而不是警报。