asp.net – 当我按浏览器BACK按钮会发生什么?
|
考虑这种情况: >我访问了使用ASP.NET构建的网站页面。该页面是一个包含ASP.NET服务器控件的简单aspx页面。 问题:页面生命周期会发生什么?是否发生所有事件或浏览器只显示页面的缓存版本而不发出任何请求? 解决方法我认为最好的答案是:这取决于浏览器,特别是在post / postback之后。较老的浏览器用于弹出一个确认对话框,使“页面包含将被重新提交的POST数据”,您可以继续(重新提交)或取消。因为在ASP.NET WebForms中发生的一切都是FORM元素(ViewState,事件等)的一部分,这将导致整个生命周期被重复。 当然,这不会造成重复提交的麻烦,所以很多网站不得不提出解决方法来解决dupe问题,而今天大多数浏览器只是从缓存中提取页面。 …这是除非你重写缓存控制头,强制浏览器不要将页面存储在缓存中。显然,在这种情况下,它无法从缓存中检索,所以通常会被重新提交。但是,这又取决于浏览器 – 例如,某些浏览器不允许通过SSL重新提交,所以如果这是使用的协议,那么用户只会看到一条消息,指出该页面已过期/不能所示。 来想一想,可能一个更好的答案是:作为网站设计师,当您点击“后退”按钮时,您真的不能依赖用户浏览器的任何特定行为。如果重复提交可能会产生负面的副作用(如收取信用卡两次),那么您需要采取适当措施来防止这种情况发生。这是很好的做法,因为完全有可能用户只需双击“提交”按钮意外。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 是否有可能检测到移动浏览器的GPS位置?
- 处理ASP.NET MVC中的异步请求
- asp.net-mvc – 在ASP.NET MVC应用程序中实现细粒度安全(即
- ado.net – ASP.NET:如何从web.config ConnectionString创
- asp.net-mvc – Actionresult vs JSONresult
- 在Asp.net mvc中应该有服务层吗?
- 嵌套的ASP.NET’应用程序’在IIS内继承父配置值?
- asp.net – 什么Jenkins插件可以用于.NET网站部署?
- 自定义每个用户的会话超时 – ASP.NET
- asp.net-mvc – xVal和ASP.Net MVC 2 AddModelStateErrors问
- 端到ASP.NET MVC的推荐方法
- asp.net – Javascript:为什么如果(假)?
- asp.net – 如何在web.config中增加执行sql查询的
- asp.net – 在FormsAuthenticationTicket上的Ver
- asp.net-mvc – ASP.Net MVC:静态HTML文件的Ren
- asp.net-mvc-3 – 如何在mvc3 razor视图中使用会
- asp.net – 计算代码后面的代码行数和aspx文件的
- asp.net-mvc – RESTful服务:WCF与ASP.NET MVC
- asp.net-mvc – 使用REST API进行身份验证
- 存储ASP.NET会话变量的最佳解决方案是什么? Sta
