首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果用户单击asp.net中的浏览器后退按钮,如何清除/放弃会话

如果用户单击asp.net中的浏览器后退按钮,如何清除/放弃会话
EN

Stack Overflow用户
提问于 2014-02-20 11:16:39
回答 2查看 4.8K关注 0票数 0

需要清除“浏览器上的会话”按钮(重定向到“登录”或“错误页”),如果用户再次在浏览器中粘贴相同的URL以访问网页或单击“浏览器转发”按钮,因为会话已过期/放弃,因此需要重定向到登录页或错误页。不应在任何时间点从浏览器缓存中显示相同或任何应用程序网页。

技术栈:

  • Microsoft.NET
  • Java脚本/ C#
  • IE7/8/9/10
  • Safari
  • Mozilla
EN

回答 2

Stack Overflow用户

发布于 2014-02-20 11:54:17

不幸的是,大多数现代浏览器将在用户单击“后退”按钮后从缓存中重新加载页面。没有发送到服务器的请求。

您可以尝试通过html head部分中的addind元信息禁用缓存:

代码语言:javascript
复制
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />

但是请记住,决定从缓存重新加载哪些内容和再次请求什么内容的是浏览器。

票数 3
EN

Stack Overflow用户

发布于 2014-02-20 12:36:18

我不认为禁用缓存是个好主意。对您来说,唯一重要的是用户必须登录并在单击导航按钮时重新开始。您需要有一个签名页面,该页面可以完成您需要做的任何事情,以便签出和清除会话,然后在用户导航离开时重定向到该页面。

代码语言:javascript
复制
$(window).bind('beforeunload', function (event) {
   //if(some condition that detects user hasn't clicked a link on your page)
       location.href = "/signout.aspx";
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21906101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档