浏览器后退按钮和关闭问题

时间:2012-03-14 10:47:37

标签: javascript asp.net-mvc-3

我有一个MVC3应用程序,在其中向用户发送一个电子邮件,有一个链接。点击电子邮件中的链接后,用户进入登录页面,然后登录后进入第2页(第二页)页)。 现在,用户在进入第二页后无法返回登录页面,这是我为其编写的代码(使用会话)

在第二页的控制器中:

Session.Add("Login",true);

在登录页面的控制器中:

if(Session["Login"]==true)
    {
    //redirect back to Second page
    }
    else{
    //continue
   }

现在,问题是,每当用户进入第二页,关闭​​窗口,然后再次点击链接(在电子邮件中),由于上面的代码,他被带到第二页,而不是登录。这不应该发生。有什么方法可以避免这种情况,或者找到更好的方法来防止后退按钮的使用? 我以为我可以检测到浏览器的关闭事件,并清除我的会话,但似乎不可能。请帮忙!

1 个答案:

答案 0 :(得分:2)

如果您希望电子邮件中的链接系统地将用户发送到LogOn页面,您可以像这样修改它:

http://domain.com/account/logon?returnurl=/somecontroller/someaction

这样,每当用户点击电子邮件中的链接时,无论他是否已经在您的网站上进行了身份验证,他都将被带到LogOn页面。