0

我知道这已经被问过很多次了,并且我尝试过使用公认的答案。但遗憾的是,在我的浏览器(Mozilla v18.0.2)中,这些似乎都不适合我。

我正在为我的网站使用主干,并且我使用 cookie 来处理用户登录会话。

以下是不成功的:

代码 1

var cookie_date = new Date ( );  // now
cookie_date.setTime ( cookie_date.getTime() - 1 ); // one second before now.
// empty cookie's value and set the expiry date to a time in the past.
document.cookie = "uid=;expires=" + cookie_date.toGMTString();
document.cookie = "userName=;expires=" + cookie_date.toGMTString();

代码 2

var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0){
            uid = c.substring(nameEQ.length,c.length);
            return uid;
        }
 };

任何删除浏览器cookie的有效解决方案?

谢谢

罗伊

4

1 回答 1

0

简单的答案

你不能。

长答案

您可以覆盖 cookie 并给它一个过去的过期时间。

浏览器会在它过期后的某个时候丢弃它。在此之前,您需要检查自己是否已“删除”,例如使用特殊值或将到期日期与当前时间进行比较。

于 2013-07-17T13:42:40.680 回答