首页 > 代码库 > ajax缓存问题

ajax缓存问题

使用Ajax中查询数据库时,只第一次查询了数据库,以后再有请求就不提交给服务器处理了
页头的清缓存标签没起作用

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">

解决方法:
1:加时间戳 var url = url + "&timeStamp=" + new Date().getTime();
2:加随机数 var url = url + "&ran=" + Math.random();1.防止从缓存读取数据

ajax调用后台页面的时候先判断缓存中是否有该页面,有就从缓存中取值,加个随机数的目的就显而易见了
2.安全方面的也有一定的作用
3:在request.send(...);之前加 request.setRequestHeader("If-Modified-Since","0");

4:在后台out.print之前加入response.setHeader("Cache-Control", "no-cache");清空缓存

ajax缓存问题