ASP.NET中Cookie的使用方法

来源:互联网 发布:ssh连接不上linux主机 编辑:程序博客网 时间:2024/05/19 22:46


if(Request.Cookies["userName"] != null)     Label1.Text = Server.HtmlEncode(Request.Cookies["userName"].Value);访问Cookie方法(2) if(Request.Cookies["userName"] != null) {     HttpCookie aCookie = Request.Cookies["userName"];     Label1.Text = Server.HtmlEncode(aCookie.Value); } 

创建多值Cookie方法 (2)

HttpCookie aCookie = new HttpCookie("userInfo"); aCookie.Values["userName"] = “admin"; aCookie.Values["lastVisit"] = DateTime.Now.ToString(); aCookie.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(aCookie); 

不能直接修改或删除Cookie,只能创建一个新的Cookie,发送到客户端以实现修改或删除Cookie.



 Cookie可以保持登录信息到用户下次与服务器的会话,换句话说,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录了(当然,不排除用户手工删除Cookie)。而还有一些Cookie在用户退出会话的时候就被删除了,这样可以有效保护个人隐私。


Cookie在生成时就会被指定一个Expire值,这就是Cookie的生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。有些页面将Cookie的生存周期设置为“0”或负值,这样在关闭浏览器时,就马上清除Cookie,不会记录用户信息,更加安全。



   在网站设计对cookie进行编程时,如果没有设置Expire的值cookie的内容暂时保存在内存中,关闭浏览器之后该信息就会被删除;设置Expire的值之后,cookie会以文本的形式保存到本地上,每次打开浏览器访问该网站时客户端都会向服务器发送该cookie,直至设置的cookie有效期逾期为止,浏览器会将该信息清除。



  1. HttpCookie acookie = new HttpCookie("username");  
  2. acookie.Value="mike";  
  3. acookie.Expires=DateTime.MaxValue;   
  4. Response.Cookies.Add(acookie);  



  1. HttpCookie cookie = new HttpCookie("login");  
  2. cookie.Values["username"]="mike";  
  3. cookie.Values["password"]="123456";  
  4. cookie.Expires= System.DateTime.Now.AddDays(1);//设置过期时间  1天  
  5. Response.Cookies.Add(cookie); 

    


     


                  



          在B/S开发中Cookie是一个很常用并且很重要的知识,不仅要学会对cookie的读与写,还有对cookie的用途、生命周期有一个全面系统的理解,从而帮助我们更好的利用和使用cookie进行编程设计。当然提到cookie,最重要的一个问题就是安全问题,尽管在cookie中已经对数据加密,经过加密处理后的信息即使被网络上一些别有用心的人截获,也看不懂,因为他看到的只是一些无意义的字母和数字。然而,现在遇到的问题是,截获Cookie的人不需要知道这些字符串的含义,他们只要把别人的Cookie向服务器提交,并且能够通过验证,他们就可以冒充受害人的身份,登陆网站。这种方法叫做Cookie欺骗。所以对于Cookie知识还需深入了解和挖掘。









原创粉丝点击