使用 System.Windows.Application.SetCookie 创建持久 cookie 失败
本文关键字:cookie 失败 创建 SetCookie System Windows Application 使用 | 更新日期: 2023-09-27 18:35:56
我正在尝试创建一个持久的cookie。这是代码:
string expires = string.Format("{0} GMT", DateTime.Now.AddHours(1).ToString("ddd, dd-MMM-yyyy HH:mm:ss"));
string newCookie = string.Format("Cookie1=ValueToStore; expires={0}", expires);
Uri location = new Uri("http://www.mysite.com/Application");
System.Windows.Application.SetCookie(location, newCookie);
string theSetCookie = System.Windows.Application.GetCookie(location);
字符串theSetCookie
应该包含 cookie 中的所有数据,不是吗?但是它只包含Cookie1=ValueToStore;
.我错过了什么?为什么到期日期没有进入并使其成为持久性 cookie?
注意:我在 Windows 7 中使用 Internet Explorer 9
过期时间戳不是 Cookie 值的一部分。当您设置 cookie 时,您将其与一些给定参数一起设置(过期),但当您读取它时,您只读取值。
Cookie 过期不应驱动应用程序中的任何逻辑:
- 如果由于经过一定时间而不再有效,则应反映在过期时间中
- 如果 cookie 的有效期应该更长,则可以在不知道现有过期时间的情况下进行设置
- 如果要删除过期(创建会话cookie),可以在不设置过期的情况下再次设置过期
这些方案都不需要知道过期时间戳。