我正在尝试删除一个 cookie,但它并没有被删除。这是我尝试使用的代码。
if (Request.Cookies["dcart"] != null)
{
Response.Write(Request.Cookies["dcart"].Expires);
// Response 1/1/0001 12:00:00 AM
Response.Write(Request.Cookies["dcart"].Value);
// Response 229884
HttpCookie myCookie = new HttpCookie("dcart");
myCookie.Expires = DateTime.Now.AddDays(-1d);
myCookie.Value = "";
Response.Cookies.Add(myCookie);
}
Response.Write(Request.Cookies["dcart"].Expires);
// Response 1/1/0001 12:00:00 AM
Response.Write(Request.Cookies["dcart"].Value);
// Response 229884
当我再次检索 cookie 时,没有任何变化。我检查 w/ FireFox 和 Chrome 相同的行为。有趣的一点是,到期日期在浏览器上正确显示,但在代码上。
我尝试了以下并没有工作。
- 将到期日设置为(明天)并再次将其设置为昨天。
- 重启浏览器(发生不同的浏览器和人)
- 设置值
- 使用 HttpContext.Current.Request.Cookies["dcart"]....
- Request.Cookies["dcart"].Expires = DateTime.Now.AddYears(-10);
PS。该代码不会直接在您的机器上运行,因为您没有 cookie。