使用Javascript删除cookie

时间:2012-02-20 07:52:27

标签: javascript cookies server-side

如果我使用代码设置cookie

var a = 'jn=900; expires=Fri, 27 Jul 2013 02:47:11 UTC; path=/';

document.cookie = a;

然后确定document.cookie = 'jn=900; expires=Fri, 27 Jul 1999 02:47:11 UTC; path=/';将删除Cookie。

是否有必要设置用于设置cookie的所有属性以删除cookie?

IE中。 document.cookie = 'jn=900; expires=Fri, 27 Jul 1999 02:47:11 UTC;'是否足以删除上面显示的cookie,还是应该指定用于设置cookie的路径?

假设在我删除cookie的页面中可以访问cookie。

还可以使用Javascript删除PHP设置的cookie吗?

1 个答案:

答案 0 :(得分:3)

最好设置路径以避免在其他域(www.domain.com而非domain.com)上错误设置Cookie等问题。

关于第二个问题,答案是肯定的,如果没有标记为HttpOnly,您可以使用Javascript访问和删除PHP创建的cookie。

The HttpOnly attribute directs browsers to use cookies via the HTTP protocol only. An HttpOnly cookie is not accessible via non-HTTP methods, such as calls via JavaScript (e.g., referencing "document.cookie"), and therefore cannot be stolen easily via cross-site scripting (a pervasive attack technique[27]). As shown in previous examples, both Facebook and Google use the HttpOnly attribute extensively.

http://en.wikipedia.org/wiki/HTTP_cookie#HttpOnly_cookie