首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

操作cookie的有关问题

2012-04-14 
操作cookie的问题微软的网页上有这么一句:不能直接删除用户计算机中的 Cookie。但是,可以通过将 Cookie 的

操作cookie的问题
微软的网页上有这么一句:
不能直接删除用户计算机中的 Cookie。但是,可以通过将 Cookie 的到期日期设置为过去的日期,让用户的浏览器来删除 Cookie。当用户下一次向设置该 Cookie 的域或路径内的页发出请求时,浏览器将确定该 Cookie 已到期并将其移除。

请注意这一句:当用户下一次向设置该 Cookie 的域或路径内的页发出请求时,浏览器将确定该 Cookie 已到期并将其移除。
也就是说,我如果在a页面里用
  HttpCookie user = HttpContext.Current.Request.Cookies["userinfo"];
  user.Expires = DateTime.Now.AddDays(-1);
  HttpContext.Current.Response.Cookies.Add(user);
来设置cookie过期,然后在同页面马上判断cookie是否存在的话,那么永远不可能得到cookie不存在的结果?
我现在发现就是这样 if (HttpContext.Current.Request.Cookies["userinfo"] == null),这个结果永远是false,怎么才能让这个判断的结果为true呢?

[解决办法]
Request.Cookies.Remove("name");
[解决办法]
HttpCookie cook = HttpContext.Current.Request.Cookies["userinfo"];
if (cook != null)
{
cook.Expires = new DateTime(1970, 1, 1);
HttpContext.Current.Response.Cookies.Add(cook);
}
HttpContext.Current.Request.Cookies.Remove("userinfo");

清除cookie

热点排行