10.3 ASP.NET的Cookie和Session
10.3.1 ASP.NET中的Cookie
通过上一部分的学习,我们已知道:Cookie是ASP中的一个对象集合,它以加密的形式被保存在客户端特定文件夹内,用户可以修改、删除甚至伪造Cookie;而Session是一个服务器对象,它被保存在服务器,所以相对地,使用Session较为安全,但较耗费服务器资源。你可以随意设置Cookie的生存期,例如1年。但如果你让一个Session变量始终生存在服务器主机内,对你的服务器来说并不是一个好的选择,通常来讲,涉及到“管理权限”的时候才会用Cookie+Session双认证。
首先我们还是在ASP.NET中练习写入和读取Cookie和Session,了解一些Cookie的基本知识:Cookie对象是.NET Framework中HttpCookie类实例化的模型。下面我们来学习ASP.NET中与Cookie密切相关的一些方法:
1. 如何建立Cookie:ASP.NET建立Cookie的标准代码写法是
HttpCookie myCookie = new HttpCookie("someCookie");
这句代码建立了一个名为myCookie的Cookie对象
2. 接收Cookie对象:接收ASP.NETCookie对象的标准代码写法是
HttpCookie getCookie = Request.Cookies["someCookie"];
设置getCookie为一个Cookie对象,它是请求页面中Cookie对象数组中someCookie的子集。如果名为someCookie的Cookie数组不存在,则getCookie的null属性为true。
3. 给Cookie增加键值:ASP.NET增加键值的标准代码写法是
myCookie.Values.Add("auth", "admin");
给名为myCookie的Cookie对象(必须实现建好)增加一个auth键名,其值为admin。
4. 附加键值,使Cookie生效:标准代码格式为
Response.Cookies.Add(myCookie);
上句代码把名为myCookie的对象附加到Cookie数组内。注意,在设定Cookie完毕之后一定要加上这句代码才能生效,
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余1页未读,立即下载