【发布时间】:2016-07-28 04:09:33
【问题描述】:
我有一个添加到响应中的 cookie,但如果已经存在具有相同密钥的 cookie,我想将其删除,否则我最终会得到 2 个相同密钥的 cookie。
我以为只要让 cookie 过期,它就会从浏览器中删除?
HttpCookie cookie = new HttpCookie("UserCookie");
cookie.Value = encTicket;
if (HttpContext.Current.Request.Cookies["UserCookie"] != null)
ClearCookie("UserCookie");
HttpContext.Current.Response.Cookies.Add(cookie);
private static void ClearCookie(string key)
{
var httpContext = new HttpContextWrapper(HttpContext.Current);
var _response = httpContext.Response;
HttpCookie cookie = new HttpCookie(key)
{
Expires = DateTime.Now.AddMonths(-1),
Value = null
};
_response.Cookies.Add(cookie);
}
非常感谢任何帮助。
【问题讨论】:
-
事实上,添加一个过期的 cookie 会创建另一个,所以我最终得到了三个,原始的,过期的,我添加的和新的。
标签: asp.net-mvc asp.net-mvc-3 cookies setcookie