MVC 注销浏览器历史记录

MVC Logoff browser history

我有一个带有 MVC 4 + WebAPI 的 .net 4.5 应用程序,但我面临着一种我不知道如何 explain/solve.

的情况

我的注销代码如下:

public ActionResult SignOut()
{
    FormsAuthentication.SignOut();
    return Redirect("~");
} 

这在某种程度上符合预期(未针对黑客场景进行验证)。

但是,如果我执行以下操作:

public ActionResult SignOut() {
{
    FormsAuthentication.SignOut();
    return Redirect("~/?logout=true");
}

它似乎仍然有效,但是,如果用户点击 chrome 上的后退导航按钮(或退格键),他将返回到登录页面!

  1. 为什么会这样?
  2. 是否有任何其他方法可以将参数传递给重定向调用?

您能确认您看到的页面不是缓存版本吗?按 Shift-F5 并查看页面是否刷新,或者您是否被重定向到登录页面。如果是这种情况,您可以使用缓存设置来确保用户无法返回页面。