cookies应用
cookies是存在用户的磁盘的某个文件夹下,不同的浏览器存放cookies的路径不一样,设置cookies一般附带着设置到期时间,来控制cookies,也是保护用户的信息的安全,也是清理磁盘空间(注意cookies是有物理路径的,是一个文件)。
//创建设置cookie
Response.Cookies["name1"].Value = "aaa";//设置cookies
Response.Cookies["name1"].Expires = DateTime.Now.AddDays(3);//设置到期时间为三天
//ashx下的设置
context. Response.Cookies["name1"].Value = "aaa";//设置cookies
context. Response.Cookies["name1"].Expires = DateTime.Now.AddDays(3);//设置到期时间为三天
Session
session是设置到服务端的内存中,所以也就导致,使用session一定要注意,不要轻易使用,否则会导致服务器挂掉的,一般存些跟用户相关的信息,当同一个session值,不同的用户会获取不同的值,举例说明
换将介绍:同一个网站,不同的用户:
客户1:
Session["name1"] = "1111";
客户2:
Session["name1"] = "2222";
//这个时候一般会认为是session被重新赋值把1111给覆盖掉了,其实不是,
//当客户1取值时,他拿到的还是1111
//当客户2取值时还是22222
//这是因为每一个用户都有一个独立的session,在服务端的内存中,每一个session赋值都会附加一个编号,来进行区分,就算session的key一样,编号也不一样,所以不会覆盖,而是独立的存在。
//赋值:
Session["name1"] = "1111";
Session.Remove("name1");//赋值
//对于session,我们一般不设置过期时间,一般自己有20分钟的生命周期。
//我们平常的登录超时,就是这个session控制的,当session过期了,就提醒你登录超时,返回重新登录
cache缓存
缓存就是一把双刃剑,是牺牲一方,保另一方;
把数据放到内存里面,下次请求的时候,直接从内存中读取数据返回给客户端就可以了,不用再去访问数据库了或磁盘。也就是内 存空间换去磁盘读取数据的时间。
//aspx界面缓存的使用
<% @ OutputCache Duration="30" VaryByParam="*" %>
//Duration:时间,单位为秒
//VaryByParam:缓存类型,一般设置*,指不发生改变就不会让缓存失效
//自定义缓存实现
Cache.Insert("key","ssss", null ,DateTime.Now.AddSeconds(20),TimeSpan.Zero);
“key”为键
“ssss”为值
null:过期时间
DateTime.Now.AddSeconds(20) 20s过期(绝对时间)
TimeSpan.Zero过期时间为空
//简便写法
Cache.Insert("key","ssss")
直接设置