ajax的缓存清理
来源:互联网 发布:443端口不通怎么办 编辑:程序博客网 时间:2024/05/17 06:53
今天做一个密码初始化的功能,不想初始化了在返回原来页面,于是就用ajax实现,初始化页面包括一个生成随机密码的函数,当点击“初始化密码”的时候,可以得到返回的密码,但是当点击第二次,第三次,都是第一次返回的那个密码。而且数据库也不更新了。
于是就到百度上搜索,结果找到是ajax和缓存的问题.
我只用了2(或者3)解决了问题,其他的没有试验,如果大家碰到类似的问题可以试一试,网上推荐用2或者3解决,原因就是简单吧。
搜索到的解决办法:
1、在服务端加 header("Cache-Control: no-cache, must-revalidate");
2、在ajax发送请求前加上 xmlHttp.setRequestHeader("If-Modified-Since","0");
3、在ajax发送请求前加上 xmlHttp.setRequestHeader("Cache-Control","no-cache");
对于2和3也就是这样实现:
function changepass(upass) {
createXMLHttpRequest();
var url = "cpass.asp?uid=" + upass ;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = callback;
xmlHttp.setRequestHeader("If-Modified-Since","0");//清楚ie缓存------>2
//xmlHttp.setRequestHeader("Cache-Control","no-cache");//清楚ie缓存------->3
xmlHttp.send(null);
}
4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了
5、第五种方法和第四种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime();
6、用POST替代GET:不推荐
该文章转载自网络大本营:http://www.qqview.com/Dev/AJAX/20083618801.Html
- ajax的缓存清理
- ajax的缓存清理
- ajax 清理缓存实例
- 键盘输入缓存的清理
- Xcode的缓存清理
- showModelDialog窗口的缓存清理
- 缓存与session的清理
- Ehcache缓存的清理问题
- 清理缓存的shell脚步
- WebView缓存的清理问题
- 如何清理weblogic的缓存
- 清理tomcat缓存的步骤
- Android中缓存的清理
- 清理app应用程序的缓存
- 获取缓存的大小 以及清理缓存
- 获取缓存的大小并且清理缓存
- 缓存清理
- 清理缓存
- DotNet资源站点汇总
- 个人实现的一个简单的ipv4地址转换为二进制显示的脚本
- 整合SE J2ME SDK与eclipse开发环境
- 分页Proc
- 最新版CodeSmith3.2(.net2.0)教程目录
- ajax的缓存清理
- 找到OpenCms7.0.4默认的模板
- Eclipse3.0配置SQLExplorer数据库
- 于丹《庄子》心得讲稿-《大道与自然》
- C#编程中的 New 关键词的几种用法
- 于丹《庄子》心得讲稿-《本性与物性》
- 改进struts中DispatchAction用法
- 如何在IE中调试JS
- 于丹《庄子》心得讲稿-《感悟与超越》