5

我正在使用以下代码设置 Cookie,

document.cookie = name+"="+value+ ";expires="+"domain=xyz.com;path=/";

我的服务器中设置的会话到期时间是 15 分钟。如果客户端空闲 15 分钟,15 分钟后,会话将被销毁。这会破坏我的 Cookie 中设置的值吗?

我的意思是,cookie 过期设置是否document.cookie与服务器中设置的 cookie 过期相关?

4

2 回答 2

1

我认为答案实际上取决于浏览器如何处理 cookie 过期

当服务器发送 HTTP 响应时,客户端(浏览器)将Set-Cookie在响应中查找任何标头。如果找到,它将覆盖存储在浏览器上的 cookie。

从持久客户端状态 HTTP Cookies中引用:

expires 标头让客户端知道何时可以安全地清除映射,但客户端不需要这样做。如果 cookie 的数量超过其内部限制,客户端也可以在 cookie 的到期日期到来之前删除它。

另外,请检查:

如果 CGI 脚本希望删除 cookie,它可以通过返回具有相同名称的 cookie 和过去的过期时间来实现。路径和名称必须完全匹配,以便过期 cookie 替换有效 cookie。这一要求使得除了 cookie 的创建者之外的任何人都很难删除 cookie。

这意味着如果网络服务器自动向您发送带有Set-Cookie标头的响应,它将覆盖您手动设置的 cookie。

相关:
http ://www.superuser.com/questions/356265/what-do-browsers-do-with-expired-cookies
http://www.stackoverflow.com/questions/1635909/how-do-i-remove -delete-expire-a-cookie-立即

于 2013-02-01T09:45:52.073 回答
0

如果 cookie 被销毁,那么数据也将被销毁。

于 2013-02-01T14:16:56.063 回答