登录后,当点击后退按钮时,页面仍显示为asp.net mvc 3

时间:2014-04-02 06:06:36

标签: c# jquery asp.net-mvc session

我看到很多问题几乎与此类似。但是,我还没有找到能够解决问题的答案。

我有一个注销按钮,我使用Session.Abandon()和Session.Clear()来清除会话。它工作正常。但是,每当我点击浏览器上的后退按钮时,页面仍然显示。但是,它应该显示登录表单,因为用户已经注销。

控制器:

[HttpPost]
public ActionResult LogOut()
{
     Session.Clear();
     Session.Abandon();
     return RedirectToAction("Index", "LogIn");
}

如何解决这个问题?。非常感谢任何建议。提前谢谢。

2 个答案:

答案 0 :(得分:9)

您可以在global.asax

中设置NoCache
protected void Application_BeginRequest()
{
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
    Response.Cache.SetNoStore();
}

答案 1 :(得分:0)

您可以将其设置为" ServerAndNoCache"强制浏览器不要缓存页面而不是服务器来缓存页面,这样服务器就不会有额外的负载。