维护应用程序状态
HTTP是无状态协议,从WEB服务器的角度来看,每个访问请求都是一个新的用户。
cookie与浏览器有关,因为不同的浏览器存储cookie的位置是不同的。
cookie的安全性限制:
所有cookie是与域名相关的,其大小是受限的,cookie的数量是有限的。
创建cookie 名字是区分大小写的,如果需要持久化一个cookie需要指定一个过期时间。存储简单文本。=
Response.Cookies[“message”].Value =”content”;
Response.Cookies[“message”].Expires = DateTime.Now.AddYears(2);
读取cookie
string message = Request.Cookies[“message”].Value;
也可以通过索引得到cookies内容
for(int i =0; i<Request.Cookies.Count; i++)
colCookies.Add(Request.Cookies[i]);
删除cookie 指定一个过期时间就可以
Response.Cookies[“message”].Expires = DateTime.Now.AddDays(-1);
//删除所有cookie
string[] cookies = Request.Cookies.AllKeys;
foreach(string cookie in cookies)
{
Response.Cookies[cookie].Expires = DateTime.Now.AddDasys(-1);
}
多值cookie就是 Response.Cookies[“perference”]["first”]= value;
设置cookie属性:
Domain 指定关联到cookie的域名,默认值是当前域名
Expires 指定一个过期时间创建持久化cookie
HasKeys 是否是一个多值cookie