平时各位在做项目时多半时候都会用到客户端的cookie,可大家知道cookie是存储在哪里吗?
首先cookie失效分为2种:
1:设置过期时间失效(只要设置了过期时间cookie就会存储在硬盘里面)
2:当会话结束时失效,即关闭浏览器窗口(如果没有设置Expires,cookie就会存储在内存里面)
手动删除cookie失效(这个不知大家算不算)
下面给出个demo
1 <%@ Page Language="C#"%> 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3 <html xmlns="http://www.w3.org/1999/xhtml"> 4 <head runat="server"> 5 <title>内存cookie和硬盘cookie</title> 6 <script type="text/javascript" runat=server> 7 // 内存 8 protected void btn_cookie_1_Click(object sender, EventArgs e) 9 { 10 HttpCookie cookie = new HttpCookie("Memory"); 11 cookie.Value = "内存存储"; 12 HttpContext.Current.Response.AppendCookie(cookie); 13 } 14 // 硬盘 15 protected void btn_cookie_2_Click(object sender, EventArgs e) 16 { 17 HttpCookie cookie = new HttpCookie("Hard disk"); 18 cookie.Value = "硬盘存储"; 19 cookie.Expires = System.DateTime.Now.AddDays(1); 20 HttpContext.Current.Response.AppendCookie(cookie); 21 } 22 // 23 </script> 24 </head> 25 <body> 26 <form id="form1" runat="server"> 27 <div> 28 <asp:Button ID="btn_cookie_1" runat="server" Text="内存cookie" 29 onclick="btn_cookie_1_Click" /> 30 <asp:Button ID="btn_cookie_2" runat="server" Text="硬盘cookie" 31 onclick="btn_cookie_2_Click" /> 32 </div> 33 </form> 34 </body> 35 </html>
这里是不同windows版本cookie存储的路径
2000、Xp:
Cookie:C:/Documents and Settings/[user name]/Cookies/
Vista、Win7:
在Vista、Win7中,权限管理较为严格,IE7/IE8 默认运行使用了保护模式机制,在保护机制下,IE 运行于低权限。如果 IE 运行在低权限下,则将目录设置为对应的Low目录,如下:
Cookie: C:/Users/[user name]/AppData/Roaming/Microsoft/Windows/Cookies/
C:/Users/[user name]/AppData/Roaming/Microsoft/Windows/Cookies/Low/
进入到目录以后按最新时间排序第一个文件就是你当前操作的cookie文件,这里的文件名是随机生成的。