如何使用Javascript删除cookie?

时间:2009-11-26 08:46:13

标签: javascript cookies

如何删除

设置的cookie
javascript:void(document.cookie=”PREF=ID=20b6e4c2f44943bb:U=4bf292d46faad806:TM=1249677602:LM=1257919388:S=odm0Ys-53ZueXfZG;path=/; domain=.google.com”);

以下声明不起作用。

javascript:void(document.cookie=”PREF=ID=20b6e4c2f44943bb:U=4bf292d46faad806:TM=1249677602:LM=1257919388:S=odm0Ys-53ZueXfZG;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/; domain=.google.com”);

删除代码有什么问题?

5 个答案:

答案 0 :(得分:3)

Trick是对的......特别是你需要在expires标题中添加任何过去值。 (这些天你使用的是一整年;两位数的格式只能回到早期的Netscapes。)

另外,请确保您不要使用上面引用的智能引号。

javascript:alert(document.cookie='PREF=X;path=/;domain=.google.com;expires=Sat, 01-Jan-2000 00:00:00 GMT');

请注意,Date.toGMTString生成的格式与Cookie规范要求的日期格式相同,但它仍可在许多浏览器中使用。

答案 1 :(得分:2)

您的Cookie域 .google.com ,如果您实际上没有运行该域中的代码,则无法修改Cookie。

答案 2 :(得分:1)

为什么不坚持一个问题或为自己解决问题,而不是每隔几分钟就发布一次问题?

e.g。 https://stackoverflow.com/questions/1802210/how-to-recover-google-classic-design-from-its-new-design

How to reverse the effect of the following execution by using Javascript?

答案 3 :(得分:0)

Thu, 01-Jan-70 00:00:01 GMT

午夜后设定时间

答案 4 :(得分:0)

同意,@ bobince。 official documentation表示使用Date.toUTCString()表示Cookie过期日期。

如果您想稍后强行删除,我95%确定您在创建cookie crumb时必须设置过期日期。在没有明确的到期日期的情况下创建的cookie crumb默认是会话cookie(crumb),这意味着在浏览器关闭之前不会删除它。我记得在过去尝试使会话cookie过期无效。

如果您首先在cookie crumb上设置了过期日期,请记住您可以使用变量作为新的过期日期。

// assuming a non-session cookie crumb called "someCrumbName" exists:
var now = new Date();
var expirationDate = new Date();
var someValue = "foo";

// set the expiration date to a week ago and delete the cookie
expirationDate.setDate(now.getDate() - 7);
document.cookie = "someCrumbName=" + someValue + ";expires=" + expirationDate.toUTCString();