【发布时间】:2011-06-13 02:17:17
【问题描述】:
我正在开发一个经典 asp 开发的网络应用程序。它在顶部菜单上有注销按钮,基本上执行以下操作
- Session.Abandon()
- 重定向到 Index.asp,用户可以在其中再次登录。
用户注销后返回 index.asp。但是如果用户点击浏览器的后退按钮,他们会转到上一页。我不希望这种情况发生。我想要一条消息说他们已经注销。我已经实施了以下步骤
1.在每页顶部添加Response.Expires=-1和Response.CacheControl="no-cache"。
2.在每个页面上,我都在检查会话对象以查看它是否为空。如果为空,我正在创建一条消息,说明他们已经注销并需要再次登录。
现在,当用户在注销后单击返回按钮,而不是显示已注销消息时,我在 IE8 上收到“网页已过期”消息。当用户在登录时单击某个页面上的返回按钮时,我看到了相同的行为。
任何想法我可以如何更好地实现这一点。
谢谢。
【问题讨论】:
-
"Web page expired" 和类似的消息表明,用户回到了一个 POST 的结果页面,浏览器假设页面状态已经改变或者重新发布原始请求可能会导致 Web 应用程序出现问题。
标签: session asp-classic logout