ajax缓存问题解决途径

我用PHP和Ajax结合,添加数据之后,刷新前台页面,数据没有变化。
我改动PHP动态脚本,只有重新找开IE再输入地址,才能看到效果。
以上这些是不是缓存的原因啊?怎么解决?
ajax缓存问题解决途径:
是缓存的问题。
在服务端加 header("Cache-Control: no-cache, must-revalidate");
并且在你的JS提交参数中加随机或是时间字符串
url+"?timeStamp="+new Date().getTime();

(0)

相关推荐

  • 在(ASP/PHP/JSP/html/js)中禁止ajax缓存的方法集锦

    ajax缓存有好处,但也有坏处,缓存有时候会导致误操作,影响用户体验,若你的WEB项目不需要ajax缓存功能,可按下述方法来禁止ajax缓存. 一.在ASP中禁止ajax缓存: '放在ASP网页最开头部分 Response.expires=0 Response.addHeader("pragma","no-cache") Response.addHeader("Cache-Control","no-cache, must-revalid

  • IE下Ajax缓存问题的快速解决方法(get方式)

    折腾了半天,程序中使用jquery的load方法进行请求,很奇怪为啥第二次无法发送请求.百度了一把,谁知load是用get方式进行请求的,因此IE浏览器对 其进行缓存了.网上搜了很多解决方案,一大把,下面是我认为比较全面的解决方案.主要分为客户端解决和服务端解决. 1.客户端解决方案IE访问策略:Internet选项--浏览历史记录--设置-- Internet 临时文件的选项改为每次访问网页时也可以 1: 在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数 在javascript发送

  • 解析jquery中的ajax缓存问题

    jquery的ajax请求默认请求cache是true 也就是开启的,dataType为script和jsonp时默认为false.现在我要在浏览器里读取缓存,因为ajax请求的数据很大,请求一次就够了.但是问题来了,在FF里面,是没有ajax缓存的,也就是每次都会触发ajax请求,这点和IE不一样.所以在这里就得注意,做个判断,阻止触发ajax事件. 复制代码 代码如下: function ajax_show(apartId,roomClass,sortTile){          HX_T

  • 禁止ajax缓存获取程序最新数据的方法

    今天做项目,几乎所有的提交都是通过ajax来提交,我测试的时候发现,每次提交后得到的数据都是一样的,调试可以排除后台代码的问题,所以问题肯定是出在前台.每次清除缓存后,就会得到一个新的数据,所以归根到底就是浏览器缓存问题.纠结了很久,终于解决了,在这里总结一下. 我们都知道ajax能提高页面载入的速度主要的原因是通过ajax减少了重复数据的载入,也就是说在载入数据的同时将数据缓存到内存中,一旦数据被加载其中,只要我们没有刷新页面,这些数据就会一直被缓存在内存中,当我们提交 的URL与历史的URL

  • ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题

    在做ajax页面无刷新添加的时候,IE下遭遇Ajax缓存,因为刚开始并不知道IE有这个坏毛病,折腾好久,终于解决问题. 总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题]而FF下不会出现这种情况.为了不受缓存影响,可以这样做: IE访问策略: Internet选项--浏览历史记录--设置-- Int

  • Ajax缓存问题的解决方法汇总

    1.在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0"). 2.在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache"). 3.在URL后面加上一个随机数: "fresh=" + Math.random();. 4.在URL后面加上时间搓:"

  • ajax缓存问题解决途径

    我用PHP和Ajax结合,添加数据之后,刷新前台页面,数据没有变化.我改动PHP动态脚本,只有重新找开IE再输入地址,才能看到效果.以上这些是不是缓存的原因啊?怎么解决? ajax缓存问题解决途径: 是缓存的问题.在服务端加 header("Cache-Control: no-cache, must-revalidate"); 并且在你的JS提交参数中加随机或是时间字符串 url+"?timeStamp="+new Date().getTime();

  • ajax调用中ie缓存问题解决方法

    本文实例分析了ajax调用中ie缓存问题解决方法.分享给大家供大家参考,具体如下: ajax请求调用的过程中发现的问题:后台请求是一个简单的.aspx文件,而这个页面又没有考虑过缓存的影响,使用ajax调试的时候发现有时候根本不走后台代码直接返回结果了,所以估计是受到浏览器缓存的影响.网上搜了一下,果然是缓存的问题:"IE中如果XMLHttpRequest提交的URL与历史一样则使用缓存,根本不向服务器端提交.因此无法取到刚提交的数据或新的数据". 解决方法大致有下面几种: 1.只改进

  • AJAX 缓存问题的两种解决方法(IE)

    做一个项目用到Ajax,开始觉得挺好,后来发现一个问题,例如删除一项,恢复之后就不能再接着删除, 必须要等一段时间,后来知道是IE缓存的问题 AJAX缓存页面是一个刚接触AJAX的人一定会遇到的问题,造成这个问题的关键性人物又是Ie... 在网上找了好多资料后,总结一下 1:在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数 在javascript发送的URL后加上t=Math.random() 当然,不是直接把t=Math.random()拷贝到URL后面,应该像这样:URL+"&a

  • IE8/IE9下Ajax缓存问题

    ajax简介 AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 JavaScript和XML(标准通用标记语言的子集). AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 步入正题: 最近在做一个网站的登录注册框,前端使用了jq

  • 解析浏览器端的AJAX缓存机制

    AJAX的缓存是由浏览器维持的,对于发向服务器的某个url,ajax仅在第一次请求时与服务器交互信息,之后的请求中,ajax不再向服务器提交请求,而是直接从缓存中提取数据. 有些情况下,我们需要每一次都从服务器得到更新后数据.思路是让每次请求的url都不同,而又不影响正常应用:在url之后加入随机内容. e.g. url=url+"&"+Math.random(); Key points: 1.每次请求的url都不一样(ajax的缓存便不起作用) 2.不影响正常应用(最基本的)

  • IE8下Ajax缓存问题及解决办法

    Ajax简介 AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 JavaScript和XML(标准通用标记语言的子集). AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 下面的代码,在其他浏览器都是正常的,但是在IE8中出现诡

  • 对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解

    虽然jquery的较新的api已经很好用了, 但是在实际工作还是有做二次封装的必要,好处有:1,二次封装后的API更加简洁,更符合个人的使用习惯:2,可以对ajax操作做一些统一处理,比如追加随机数或其它参数.同时在工作中,我们还会发现,有一些ajax请求的数据,对实时性要求不高,即使我们把第一次请求到的这些数据缓存起来,然后当相同请求再次发起时直接拿之前缓存的数据返回也不会对相关功能有影响,通过这种手工的缓存控制,减少了ajax请求,多多少少也能帮助我们提高网页的性能.本文介绍我自己关于这两方

随机推荐