当用户在注销后单击后退按钮时,如何重定向到登录页面?

时间:2011-07-20 11:01:12

标签: asp.net-mvc security model-view-controller

我创建了一个MVC应用程序,没有使用asp.net成员资格提供程序,我想将用户重定向到登录页面,如果用户注销并按下资源管理器中的后退按钮。

由于

2 个答案:

答案 0 :(得分:2)

您不能这样做,因为用户在点击“返回”时看到的页面实际上是页面的缓存版本。

您可以做的最好的事情是请求浏览器不要缓存已登录的页面,为此您可以执行以下操作:

Response.Cache.SetCacheability(HttpCacheability.NoCache);
在您考虑的所有页面上

都不应该是“后退按钮”。

这只是一个请求,但浏览器没有义务强制要求。

答案 1 :(得分:2)

现在我可以考虑两种解决方案,你可以为你的控制器创建一个过滤器,并通过Session,Cookies等控制身份验证......(我不推荐)

操作示例过滤器http://www.asp.net/mvc/tutorials/understanding-action-filters-cs

第二个也是我认为最好的,我更愿意做一些更简单的身份验证,比如表单身份验证......看看这个链接:

http://weblogs.asp.net/fredriknormen/archive/2008/02/07/asp-net-mvc-framework-using-forms-authentication.aspx

我在我的项目中使用这种方法并且工作正常!简单易行! 我不太喜欢会员提供者。

我希望它可以帮到你!

PS:对不起我的英语!