首页 新闻 搜索 专区 学院

在ASP.NET中Cookie 怎么失效?

0
[已解决问题] 解决于 2011-02-23 13:54

 向高手请教一下,在.net 中给cookie 设置时间之后会在相应的时间里过期。不设置时间就是浏览器关闭cookie就过期这种说法应该是正确的。

 但是如果说我给cookie 设置了一天的有效期,可是我想让用户在一天之类访问过三次cookie之后就让cookie过期。这一天中第四次访问就不行了怎么处理了?

dream梦false的主页 dream梦false | 菜鸟二级 | 园豆:316
提问于:2011-02-23 08:45
< >
分享
最佳答案
0

给Cookie设置value值,每访问一次value+1。

HttpCookie cookie = Request.Cookies[cookieName];
 if (cookie != null && int.Parse(cookie.Value) > 3)
 {
        HttpCookie cookieNew = new HttpCookie(cookieName);

   cookie.Expires = DateTime.Now.AddDays(-1);
   Response.Cookies.Add(cookieNew);

 }

两个cookieName是一样的,就是你要设置过期的Cookie名
试试

镆铘 | 菜鸟二级 |园豆:361 | 2011-02-23 09:34
cookie.Expires = DateTime.Now.AddDays(-1); 这个我试了,好像不好使啊。。没有达到过期的效果啊。
dream梦false | 园豆:316 (菜鸟二级) | 2011-02-23 11:16
其他回答(3)
0

给该cookie 设置个value 名为callcount 然后访问一次就修改一次 如果超过三次就让该cookie过期了

爱研究源码的javaer | 园豆:930 (小虾三级) | 2011-02-23 09:21
0

这个还得结合数据库,不然用户清空cookie了怎么办?

高凡凡高 | 园豆:95 (初学一级) | 2011-02-23 09:49
0

首先判断是否是同一个用户一天之内访问的,然后判断次数,过了3次,就把cookie有效期设为0

双魂人生 | 园豆:63 (初学一级) | 2011-02-23 13:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册