现在的位置: 首页 > 综合 > 正文

Cookies

2014年03月01日 ⁄ 综合 ⁄ 共 2184字 ⁄ 字号 评论关闭

Cookie是一段文本信息,在客户端存储   Cookie   是   ASP.NET   的会话状态将请求与会话关联的方法之一。Cookie   也可以直接用于在请求之间保持数据,但数据随后将存储在客户端并随每个请求一起发送到服务器。浏览器对   Cookie   的大小有限制,因此,只有不超过   4096   字节才能保证被接受。  
   
  编写Cookie  
   
     
   
  //方式1:  
  Response.Cookies["username"].value="mike";  
  Response.Cookies["username"].Expires=DateTime.MaxValue;    
   
  //方式2:  
  HttpCookie   acookie   =   new   HttpCookie("last");  
  acookie.Value="a";  
  acookie..Expires=DateTime.MaxValue;    
  Response.Cookies.Add(acookie);  
   
  //多值Cookie的写法  
   
  //方式1:  
  Response.Cookies["userinfo1"]["name"].value="mike";  
  Response.Cookies["userinfo1"]["last"].value="a";  
  Response.Cookies["userinfo1"].Expires=DateTime.MaxValue;    
   
  //方式2:  
  HttpCookie   cookie   =   new   HttpCookie("userinfo1");  
  cookie.Values["name"]="mike";  
  cookie.Values["last"]="a";  
  cookie.Expires=DateTime.MaxValue;    
  Response.Cookies.Add(cookie);  
   
   
     
   
  读取Cookie    
  Internet   Explorer   将站点的   Cookie   保存在文件名格式为   <user>@<domain>.txt   的文件中,其中   <user>   是您的帐户名。  
  注意:在获取Cookie的值之前,应该确保该   Cookie   确实存在。否则,您将得到一个异常  
   
     
   
   
  If   (Request.Cookies["userName"]!=null)  
  {  
      string   str   =   Request.Cookies("userName").Value;    
  }  
   
  //多值Cookie的读取  
  If   (   Request.Cookies["userInfo1"]!=null   )  
  {  
      string   name=Request.Cookies["userInfo1"]["name"];  
      string   last=Request.Cookies["userInfo1"]["last"];    
  }  
   
   
  //读取   Cookie   集合  
  for(int   i   =   0   ;i<Request.Cookies.Count   ;i++)  
  {  
          HttpCookie   cookies   =   Request.Cookies;  
          Response.Write("name="+cookies.Mame+"<br>");  
          if   (cookies.HasKeys   )//是否有子键  
          {  
                  System.Collections.Specialized.NameValueCollection   NameColl    
                                                                                            =   aCookie.Values   ;  
                  for(int   j=0;j<NameColl.Count;j++)  
                  {  
                          Response.Write("子键名="+   NameColl.AllKey[j]   +"<br>");  
                          Response.Write("子键值="+   NameColl[j]   +"<br>");  
                  }  
   
          }  
          else  
          {  
                  Response.Write("value="+cookies.Value+"<br>");                  
          }  
  }   
       
    
  运行此代码时,可看到一个名为“ASP.NET_SessionId”的Cookie,ASP.NET用这个   Cookie   来保存您的会话的唯一标识符。   

   
  修改   Cookie    
  修改的方法与创建方法相同  
   
   
  删除   Cookie    
  将其有效期设置为过去的某个日期。当浏览器检查   Cookie   的有效期时,就会删除这个已过期的   Cookie。  
     
   
   
  HttpCookie   cookie   =   new   HttpCookie("userinfo1");  
  cookie.Expires=DateTime.Now.AddDays(-30);    
  Response.Cookies.Add(cookie);  

抱歉!评论已关闭.