嗨,我有这个问题,因为我之前看过很多网站,允许用户退出后退一步。我已经看到下面的代码建议解决问题,它的工作原理。但我的问题是,这是最好的方式吗?我不想缓存任何安全页面?通过兑现安全页面,Web应用程序运行速度会变慢吗?还有其他选择吗?
Response.Buffer = True
Response.ExpiresAbsolute = Now().Subtract(New TimeSpan(1, 0, 0, 0))
Response.Expires = 0
Response.CacheControl = "no-cache"
答案 0 :(得分:1)
管理整个会话服务器端,使用会话令牌验证每个页面更改,然后在用户注销后,使会话令牌无效。如果没有有效令牌,请执行登录页面。
此外,在超时时,在并发登录时以及在远离页面的导航中可能使令牌无效。
根据您的应用程序,这可能是过度的,但它适用于网上银行和交易等。
答案 1 :(得分:0)
您可以通过在页面中包含此类代码来禁用此功能:
<script type="text/javascript">
window.history.go(1) ;
</script>
有了这个,当按回来时,用户将被回送(好,向前)到他来的页面。
您可以尝试将其与用于检查用户是否已登录的AJAX代码(将请求发送到返回true / false的IsLoggedIn.aspx页面)进行集成,并且在登录时不执行代码,但这尚未经过测试。