0
我有一个MVC3应用程序,其中用户发送一封电子邮件,有一个链接。点击电子邮件中的链接后,用户被带到登录页面,然后登录后,第2页(第二页)。 现在,用户无法再回到登录页面来第二页后,这是(使用会话)浏览器后退按钮并关闭问题
在第二页的控制器我为它编写的代码:
Session.Add("Login",true);
在登录页面的控制器:
if(Session["Login"]==true)
{
//redirect back to Second page
}
else{
//continue
}
现在的问题是,当用户来到第二页,关闭窗口,然后再次链接点击(在电子邮件中),他被带到到第二页,而不是登录,由于上面的代码。这不应该发生。任何方式来避免这种情况,或找到一个更好的方法来防止后退按钮的使用? 我想我可以检测浏览器的关闭事件,并清除我的会话,但它似乎不可能。请帮助!
是的,这是可能的,但有没有其他方式只涉及这两页(登录和第二)? – 2012-03-14 10:58:49
点正在更改链接上的URL将需要更改别人的代码,而不是我的模块的一部分,我不认为我可以让其他人这样做! :-( – 2012-03-14 11:07:10
@karank,恐怕没有修改链接就不能实现这一目标,因为如果第二页需要验证并且用户已经通过身份验证,当他点击电子邮件中的链接时,他将直接到达在第二页。 – 2012-03-14 11:59:25