关闭

ajax 缓存

标签: ajaxheaderphpurlflashdate
354人阅读 评论(0) 收藏 举报
用 php + Ajax 做了个简单计数器,结果发现每次刷新,计数器并不改变。到“Inernet选项”中删除IE缓存,计数器数值才会改变。(类似问题在我做 Flash 读取 PHP 的时候也遇到过)如何解决 Ajax 的这种缓存问题呢?百度了一下,主要发现这样几种方法。

  1、在服务端加 header("Cache-Control: no-cache, must-revalidate");

  2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0");

  3、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache");

  4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了

  5、第四种方法和第三种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime();

  6、用POST替代GET:不推荐

  用这些方法基本上能够解决 Ajax 的缓存问题了。具体那种更好用,自己试试吧!

 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:69815次
    • 积分:964
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:26篇
    • 译文:0篇
    • 评论:7条
    最新评论