ASP.NET MVC cookie存取和设置过期时间
2022/1/23 17:04:33
本文主要是介绍ASP.NET MVC cookie存取和设置过期时间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
ASP.NET cookie存取和设置过期时间
ASP.NET Cookie和Session - 15037075275z - 博客园
创建
//第一种 Response.Cookies["userName"].Value = "patrick"; Response.Cookies["userName"].Expires = DateTime.Now.AddDays(1);//存的时候指定过期时间 //第二种 HttpCookie aCookie = new HttpCookie("lastVisit"); aCookie.Value = DateTime.Now.ToString(); aCookie.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(aCookie);
读取
if(Request.Cookies["userName"] != null) { HttpCookie aCookie = Request.Cookies["userName"]; Label1.Text = Server.HtmlEncode(aCookie.Value); }
设置cookie过期时间
默认cookies失效时间是直到关闭浏览器,cookies失效,也可以指定cookies时间。
Response.Cookies("user_name").Expires=Date+1 '指定cookie保存时间
保留COOKIES一个小时
Response.Cookies("MyCookie").Expires= (now()+1/24)
Response.Cookies("MyCookie").Expires = DateAdd("h", 1, Now())
设置60个月以后过期
Response.Cookies("CookieName").Expires=DateAdd("m",60,now())
Response.Cookies("User").expires=second()+7
在expires后面定义的时间可以用时间函数代替
例如:date()+7就表示在今天的时间上加上7天,而second()+7则是7秒了。
Response.Cookies("字段名").expires=时间函数+N,
例如: Response.Cookies("name2").expires=date+1,表示Cookies保存1天,
再比如: Response.Cookies("name2").expires=Hour+8,表示Cookies保存8小时。
这种方法我测试过不行(在2003server,iis6.0中),不管second后面有无加(),
访问时会出现500错误(还是无法显示网页?忘了)。
这里的时间累加建议还是使用DateAdd函数,比如我们要累加一小时,
则使用: Response.Cookies("baidooglecom").expires = DateAdd("h", 1, Now()) 30分钟:
Response.Cookies("CookieName").Expires=DateAdd("n",30,now()) dateadd("S",30,now())
得到秒 Expires 指定 cookie 的过期日期。为了在会话结束后将 cookie 存储在客户端磁盘上,
或在许多时候,我们希望能更长时间地在访问者的计算机上保存cookie。必须设置该日期。
若此项属性的设置未超过当前日期,
则在任务结束后 cookie 将到期。 cookie的使用到期时间为“2010年1月1日”:
Response.Cookies("CookieName").Expires=#January 01, 2010# cookie的过期时间为“cookie的创建时间+365天”:Response.Cookies("CookieName").Expires=Date+365 但最好不要随便写 Response.Cookies("CookieName").Expires=Date,
这样页面之间的调用时值会为空。
---------------------------------------------------------------------------
1.Cookie对象
(1).写入Cookie对象
HttpCookie cookie = new HttpCookie("data"); 注:定义cookie,name属性为data。
cookie.Values.Add("name","123"); 注:cookie是以键值对的方式存储。
cookie.Expires = DateTime.Now.AddYears(2); 注:过期时间设置为2年,也可以不设置过期时间,如果不设置cookie在浏览器关闭是自动清除。
Response.Cookies.Add(cookie); 注:写入Response对象。
(2).读取Cookie对象
HttpCookie cookie = Request.Cookies["data"]; 注:获取name属性为data的cookie
if(cookies !=null &&Cookies.HasKeys) 注:判断cookie是否存在
{
string s = cookies["name"]; 注:根据name键获取值
Response.Write(s);
}
2.Session对象
Session的定义和读取相对比Cookie容易
(1).定义Session对象
Session["Itemsession"] = "abc"; 注:Session的值为"abc",Session的类型是object所以可以赋任何类型。
(2).读取Session对象
string s =(string)Session["Itemsession"] ; 注:读取时的类型,要和定义时的类型一致。
Response.Write(s);
(3).Session特点
同一台电脑的同一个浏览器表示同一次会话,不同的浏览器表示不同的会话。
同一台电脑的同一个浏览器只能有一个Session。
Session的过期时间是在浏览器关闭时自动清除或用户不进行任何活动20分钟Session也会自动清除。
3.Cookie和Session的不同点和相同点
(1).相同点
Cookie对象和Session对象作用是在窗体之间传值。
等等
(2).不同点
Cookie将状态保存在客户端,Session将状态保存在服务器端。
Session相对Cookie,Session的安全性更高。
等等。
这篇关于ASP.NET MVC cookie存取和设置过期时间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#