asp.net c#中对cookie写,读取,修改,删除等相关操作总结

作者:袖梨 2022-06-25

//写cookie

 代码如下 复制代码
HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
cookie.Expires = DateTime.Now.AddDays(1);//添加cookie有效作用时间为1天
cookie.Values.Add("user", "cxbkkk");//增加属性
cookie.Values.Add("userid", "1203");
Response.AppendCookie(cookie);//确定写入cookie中    
//读取cookie
if (Request.Cookies["Info"] != null)
{
    string temp = Convert.ToString(Request.Cookies["Info"].Values["user"]) + "  " + Convert.ToString(Request.Cookies["Info"].Values["userid"]);
    //读全部就用Request.Cookies["Info"].Value)
    if (temp == "")
    {
        Response.Write("空");
    }
    else
        Response.Write(temp);
}
else
{
    Response.Write("error");
}

//修改Cookie
 

 代码如下 复制代码

protected void Button3_Click(object sender, EventArgs e)
  {
  //获取客户端的Cookie对象
  HttpCookie cok = Request.Cookies["MyCook"];
   
  if (cok != null)
  {
  //修改Cookie的两种方法
  cok.Values["userid"] = "alter-value";
  cok.Values.Set("userid", "alter-value");

  //往Cookie里加入新的内容
  cok.Values.Set("newid", "newValue");
  Response.AppendCookie(cok);
  }

   
  }

 

// 删除cookie下的属性

 代码如下 复制代码
var acookie = Request.Cookies["Info"];
acookie.Values.Remove("userid");
acookie.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(acookie);
 


//删除所有cookie,就是设置过期时间为现在就行了
Request.Cookies.Clear()这个方法并不是删除Cookie 
删除 Cookie(即从用户的硬盘中物理移除 Cookie)是修改 Cookie 的一种形式。 
由于 Cookie 在用户的计算机中,因此无法将其直接移除。 
但是,可以让浏览器来为您删除 Cookie。 
该技术是创建一个与要删除的 Cookie 同名的新 Cookie, 
并将该 Cookie 的到期日期设置为早于当前日期的某个日期。 
当浏览器检查 Cookie 的到期日期时,浏览器便会丢弃这个现已过期的 Cookie。 
下面的代码示例演示删除应用程序中所有可用 Cookie 的一种方法:

 代码如下 复制代码

HttpCookie aCookie; 
string cookieName; 
int limit = Request.Cookies.Count; 
for (int i = 0; i < limit; i++) 

cookieName = Request.Cookies[i].Name; 
aCookie = new HttpCookie(cookieName); 
aCookie.Expires = DateTime.Now.AddDays(-1); 
Response.Cookies.Add(aCookie); 
}

相关文章

精彩推荐