为什么我不能删除cookie?

时间:2015-08-18 00:20:36

标签: javascript cookies

我有一个按钮,可以调用删除cookie并重新加载页面的功能。 问题是cookie不会删除。我在线阅读了几十个教程和示例,但我不明白为什么cookie不会删除。

以下是简单的代码:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

$config['index_page'] = '';

警告弹出并显示function logMeOut() { document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:01 UTC;"; alert(document.cookie); location.reload(); }

为什么当我刚刚删除前一行代码时,警报会读出cookie?

2 个答案:

答案 0 :(得分:1)

您的代码似乎运行正常。我的测试:

document.cookie = "username=test; expires=Thu, 01 Jan 2016 00:00:01 UTC;";
console.log('"' + document.cookie + '"');
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:01 UTC;";
console.log('"' + document.cookie + '"');

打印:

"username=test"
""

也许这与您的alert相关?

答案 1 :(得分:1)

问题是路径不一样,这就是为什么它没有删除cookie。 Cookie的路径是" www.domain.com/this"以及执行代码的路径是" www.domain.com/this/that"指定路径后,代码现在删除cookie!

新代码

document.cookie = "username=; path=/this/; expires=Thu, 01 Jan 1970 00:00:01 UTC;"; 

现在正在运作!