ASP.NET cookie存取和设置过期时间

创建

//第一种
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,
这样页面之间的调用时值会为空
 

 

posted @ 2020-06-27 10:37  离。  阅读(302)  评论(0编辑  收藏