C# Can';不要删除cookie
我看到我在使用HttpContext.Request的remove方法之后立即在调试中删除cookie,但当我重定向到另一个操作时,我仍然可以获得cookie值。为什么会这样C# Can';不要删除cookie,c#,asp.net-mvc,cookies,C#,Asp.net Mvc,Cookies,我看到我在使用HttpContext.Request的remove方法之后立即在调试中删除cookie,但当我重定向到另一个操作时,我仍然可以获得cookie值。为什么会这样 public class LoginController : Controller { public ActionResult Logout() { HttpContext.Request.Cookies.Remove(Constants.User); //I see tha
public class LoginController : Controller
{
public ActionResult Logout()
{
HttpContext.Request.Cookies.Remove(Constants.User);
//I see that HttpContext.Request.Cookies[Constants.User] returns null in this line.
return RedirectToAction("Login", "Login");
}
public ActionResult Login()
{
var userCookie = HttpContext.Request.Cookies[Constants.User];
// But HttpContext.Request.Cookies[Constants.User] is not null here. I get the value from it.
if (userCookie != null)
return RedirectToAction(Constants.MainPage, Constants.MainPage);
else
return View();
}
}
要删除cookie,您必须将其发送时的过期日期设置为“现在”或“以前的日期”。使用HttpContext.Request.Cookies.Remove(Constants.User)删除它代码>只需将其从集合中删除,但它仍存在于客户端浏览器中 例如,不要使用
Remove
函数,而是使用:
Response.Cookies[Constants.User].Expires = DateTime.Now.AddDays(-1);
要删除cookie,您必须将其发送时的过期日期设置为“现在”或“以前的日期”。使用HttpContext.Request.Cookies.Remove(Constants.User)删除它代码>只需将其从集合中删除,但它仍存在于客户端浏览器中 例如,不要使用
Remove
函数,而是使用:
Response.Cookies[Constants.User].Expires = DateTime.Now.AddDays(-1);