防止网页后退 asp禁止缓存
在数据库添加操作,特别是内容计较和用户注册等场景中,我们经常会遇到一个棘手的问题:在允许用户后退的页面恰好刷新,这可能导致意外的添加操作。这显然不是我们想要的结果。对于这种情况,解决方案已经蕴藏在我们的讨论之中。
像许多网站为了防范缓存而编写的代码,有时并不总是可靠。这时,你只需在操作的页面加入特定的设置即可。通过在网页指定要跳转的新页面,当你点击后退按钮时,就不会再回到刚才的操作页面。实际上,这一操作已经清除了历史记录。
对于ASP脚本,你可以使用以下代码:
```asp
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
```
而在ASP.NET中,相应的代码片段为:
```asp
Response.Buffer=true;
Response.ExpiresAbsolute=DateTime.Now.AddSeconds(-1);
Response.Expires=0;
Response.CacheControl="no-cache";
```
若你使用的是ajax来进行异步操作,并希望强制不缓存,可以尝试以下方法:
1. 在请求中添加一个随机数参数,例如:
```javascript
xmlHttp.open("GET", "ajax.asp?now=" + new Date().getTime(), true);
```
2. 在你要异步获取的ASP页面中加入禁止缓存的代码:
```asp
Response.Buffer =True
Response.ExpiresAbsolute =Now() - 1
Response.Expires=0
Response.CacheControl="no-cache"
```
3. 在ajax发送请求前,设置请求头以禁止缓存:
```javascript
xmlHTTP.setRequestHeader("If-Modified-Since","0");
xmlHTTP.open("get", URL, true);
xmlHTTP.onreadystatechange = callHTML;
xmlHTTP.send();
```
你也可以在服务器端设置header,以控制缓存行为:
```asp
header("Cache-Control: no-cache, must-revalidate");
```
以上方法能够有效地防止因页面缓存而导致的不必要的添加操作。确保你的网站在用户的每一次操作中都按照你的预期进行,提供流畅、稳定的用户体验。
编程语言
- 防止网页后退 asp禁止缓存
- .NET中文乱码的解决方法分享
- asp、html、js 禁止缓存的代码
- 基于bootstrap-datetimepicker.js不支持IE8的快速解决方
- 浅谈DOCTYPE对$(window).height()取值的影响
- mysql 5.7如何安装 mysql 5.7安装配置教程
- 如何自定义微信小程序tabbar上边框的颜色
- 注意-php5.4删除了session_unregister函数
- 最新版网址替换正则表达式
- 浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别
- PHP中in_array的隐式转换的解决方法
- js操作滚动条事件实例
- angular2中使用第三方js库的实例
- 关于Vue项目跨平台运行问题的解决方法
- jQuery往textarea中光标所在位置插入文本的方法
- php正则替换变量指定字符的方法