expires標記想要獲取UTC-Datestring。你可以只用一些簡單的功能我寫道:
setCookie = function(attrib, value, exp_days) {
var dt = new Date();
dt.setTime(dt.getTime() + (exp_days*86400000)); // Convert days to ms
document.cookie = attrib + "=" + value + "; expires=" + dt.toUTCString(); // add attrib=value to the cookie and set an expiration date
}
getCookie = function(attrib){
var split_cookie = document.cookie.split("; ");
attrib+="=";
for(var i=0; i<split_cookie.length; i++)
if(~split_cookie[i].indexOf(attrib)) // if the attribute is somewhere in the cookie string
// im using an ugly bitflip operator here, it could as well be an if(...!=-1)
return split_cookie[i].substring(attrib.length + split_cookie[i].indexOf(attrib),split_cookie[i].length);
return "";
}
removeCookie = function(attrib){
setCookie(attrib, "", -1);
}
如果使用removeCookie()函數,當前頁面會被留下當ATTRIB的價值將被刪除。
這很有趣。也許這是由於一些內容安全設置的原因,例如,cookie最初設置在服務器響應頭中,並設置了「httpOnly」標誌。你的服務器是否發送set-cookie頭文件? – lxe
@lxe它實際上是非常愚蠢的。我沒有意識到,當你在Mac上「關閉」瀏覽器時,仍然存在一個瀏覽器進程。你必須明確退出瀏覽器。一旦我做到了,cookie就不見了。 –