从应用程序注销后,在浏览器中阻止返回选项

时间:2009-10-27 09:33:31

标签: asp.net browser

我正在开发一个ASP.NET应用程序。我想在从应用程序注销后使用浏览器中的后退按钮阻止用户查看上一页。

4 个答案:

答案 0 :(得分:5)

感谢您的所有回复。

代码:

  Response.Cache.SetCacheability(HttpCacheability.NoCache);
  Response.Cache.SetExpires(DateTime.Now.AddSeconds(-1));
  Response.Cache.SetNoStore();
  Response.AppendHeader("Pragma", "no-cache");

我在页面加载事件中使用了此代码。工作正常。

答案 1 :(得分:0)

为什么要阻止后退按钮工作?避免妨碍用户使用浏览器正常操作的事情。

相反,您可以在页面中检查会话可用性。如果Session不可用,则将用户重定向到另一个页面。

无论如何,这里有一篇关于这个主题的文章。

A Thorough Examination of "Disabling the Back Button."

答案 2 :(得分:0)

here是解决方法如何做到这一点,但请注意,用户可以记住并写下您在退出后不会看到的页面的网址,因此您应该实现身份验证机制

答案 3 :(得分:0)

我同意凤凰......但有一件事就是当后退按钮触发时,页面会从缓存中显示,因此你只能在回发期间检查会话有效性...并记住,isPostBack将成立那个场景。

您可以使用以下代码设置页面到期日期。如果包含在页面中,则当用户在离开页面后按下后退按钮时,将显示页面过期消息。但要注意,他总是可以点击刷新并可以再次回复。

警告:在每个其他页面中使用它会使应用程序用户感到沮丧......

                Response.AppendHeader("Pragma", "no-cache");
                Response.AppendHeader("Cache-Control", "no-cache");
                Response.CacheControl = "no-cache";
                Response.Expires = -1;
                Response.ExpiresAbsolute = new DateTime(1900, 1, 1);
                Response.Cache.SetCacheability(HttpCacheability.NoCache);