cookie的存储怎么写

1.ASP.NET中用cookie存储数据限定时间该怎么写呢这个COOKIE不是普通存在硬盘上的cookie,他的生存时间只是浏览器的生存时间,意思就是说不会存在硬盘上,只会存在于浏览器的内存中,会随着浏览器的关闭而被销毁,在创建这种cookie时将最大生存时间设置为负数即可,因此又叫它浏览器cookie 。sessionID就是放在这个cookie中,你可以使用firebug等HTTP工具看到请求一个已经具有session的网站是,在HTTP请求中的cookie里面会有类似sessionid的数据 。
2.如何编写Cookie的限制由于这限制了 Cookie 的大小,最好用 Cookie 来存储少量数据,或者存储用户 ID 之类的标识符 。
用户 ID 随后便可用于标识用户,以及从数据库或其他数据源中读取用户信息 。(有关存储用户信息安全建议的信息,请参见下面的“Cookie 和安全性”一节 。)
浏览器还限制站点可以在用户计算机上存储的 Cookie 的数量 。大多数浏览器只允许每个站点存储 20 个 Cookie;如果试图存储更多 Cookie,则最旧的 Cookie 便会被丢弃 。
有些浏览器还会对它们将接受的来自所有站点的 Cookie 总数作出绝对限制,通常为 300 个 。您可能遇到的 Cookie 限制是用户可以将其浏览器设置为拒绝接受 Cookie 。
如果定义一个 P3P 隐私策略,并将其放置在网站的根目录中,则更多的浏览器将接受您站点的 Cookie 。但是,您可能会不得不完全放弃 Cookie,而通过其他机制来存储用户特定的信息 。
存储用户信息的常用方法是会话状态,但会话状态依赖于 Cookie,这一点在后面的“Cookie 和会话状态”一节中说明 。虽然 Cookie 在应用程序中非常有用,但应用程序不应依赖于能够存储 Cookie 。
不要使用 Cookie 支持关键功能 。如果应用程序必须依赖于 Cookie,则可以通过测试确定浏览器是否将接受 Cookie 。
请参见本主题后面的“检查浏览器是否接受 Cookie”一节 。编写Cookie浏览器负责管理用户系统上的Cookie 。
Cookie 通过 HttpResponse 对象发送到浏览器,该对象公开称为 Cookies 的集合 。可以将 HttpResponse 对象作为 Page 类的Response 属性来访问 。
要发送给浏览器的所有 Cookie 都必须添加到此集合中 。创建 Cookie 时,需要指定 Name 和Value 。
每个 Cookie 必须有一个唯一的名称,以便以后从浏览器读取 Cookie 时可以识别它 。由于 Cookie 按名称存储,因此用相同的名称命名两个 Cookie 会导致其中一个 Cookie 被覆盖 。
还可以设置 Cookie 的到期日期和时间 。用户访问编写 Cookie 的站点时,浏览器将删除过期的 Cookie 。
只要应用程序认为 Cookie 值有效,就应将 Cookie 的有效期设置为这一段时间 。对于永不过期的 Cookie,可将到期日期设置为从现在起 50 年 。
如果没有设置 Cookie 的有效期,仍会创建 Cookie,但不会将其存储在用户的硬盘上 。而会将 Cookie 作为用户会话信息的一部分进行维护 。
当用户关闭浏览器时,Cookie 便会被丢弃 。这种非永久性 Cookie 很适合用来保存只需短时间存储的信息,或者保存由于安全原因不应该写入客户端计算机上的磁盘的信息 。
例如,如果用户在使用一台公用计算机,而您不希望将 Cookie 写入该计算机的磁盘中,这时就可以使用非永久性 Cookie 。可以通过多种方法将 Cookie 添加到 Cookies 集合中 。
下面的示例演示两种编写 Cookie 的方法:Response.Cookies["userName"].Value = "http://www.xuexi88.com/zhishi/patrick";Response.Cookies["userName"].Expires = DateTime.Now.AddDays(1);HttpCookie aCookie = new HttpCookie("lastVisit");aCookie.Value = http://www.xuexi88.com/zhishi/DateTime.Now.ToString();aCookie.Expires = DateTime.Now.AddDays(1);Response.Cookies.Add(aCookie);此示例向 Cookies 集合添加两个 Cookie,一个名为 userName,另一个名为 lastVisit 。对于第一个 Cookie,Cookies 集合的值是直接设置的 。