• 技术文章 >web前端 >js教程

    xmlhttp缓存清除的2种解决方法_javascript技巧

    2016-05-16 17:09:22原创636
    方法一:加If-Modified-Since头
    xmlhttp多次调用时它却总是显示缓存页面, 尝试在 php 或 asp 中加入相应的http头明确不要缓存, 也没什么效果!!

    现在终于找到一个办法啦,就是在 xmlhttp.open 之后发送一个If-Modified-Since头即可, 代码如下
    xmlhttp.setRequestHeader('If-Modified-Since', '0');
    xmlHttp.onreadystatechange = stateChanged;
    xmlHttp.open("GET", url, true);
    xmlHttp.setRequestHeader('If-Modified-Since', '0');
    xmlHttp.send(null);

    方法二:请求URL后加变化参数

    因为IE默认将相同的URL请求进行缓存,所以URL加上唯一区分的参数作为区分,保持每次请求的URL不同,即可绕过IE缓存的问题
    js: URL = "http://host/a.php"+"?"+Math.random();
    vbs: URL = "http://host/a.php"&"?"&Timer()

    //var url = "ResponseContentPageScore.aspx?key=" + Math.round(Math.random() * 100) + "&HotelCD=" + inputContent;
    var url = "ResponseContentPageScore.aspx?key=" + new Date().getTime() + "&HotelCD=" + inputContent;

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:xmlhttp 清除缓存
    上一篇:jquery获得option的值和对option进行操作_jquery 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 聊聊Node中怎么用async函数• 浅析Angular中怎么结合使用FormArray和模态框• react 怎么实现按需加载• react怎么实现滚动条• 一文聊聊node文件的读写操作
    1/1

    PHP中文网