如何删除特定页面中的cookie?

Sur*_*har 4 asp.net cookies

我在ASP.NET应用程序的一个页面中创建一个cookie,我想在另一个页面中删除它.我怎么做?

Noa*_*man 7

Microsoft:如何删除Cookie

您无法直接删除用户计算机上的cookie.但是,您可以通过将cookie的过期日期设置为过去日期来指示用户的浏览器删除cookie.下次用户向设置cookie的域或路径中的页面发出请求时,浏览器将确定cookie已过期并将其删除.

为cookie分配过去的截止日期

  1. 确定cookie是否存在于请求中,如果存在,则创建一个具有相同名称的新cookie.
  2. 将Cookie的到期日期设置为过去的时间.
  3. 将cookie添加到Response的Cookies集合对象中.

以下代码示例显示如何在cookie上设置过去的截止日期.

if (Request.Cookies["UserSettings"] != null)
{
    HttpCookie myCookie = new HttpCookie("UserSettings");
    myCookie.Expires = DateTime.Now.AddDays(-1d);
    Response.Cookies.Add(myCookie);
}
Run Code Online (Sandbox Code Playgroud)

注意:调用Cookies集合的Remove方法会从服务器端的集合中删除cookie,因此cookie不会发送到客户端.但是,如果cookie已经存在,则该方法不会从客户端删除cookie.