ajax缓存解决方法

一/ ajax缓存是什么?

  当多次请求服务器上的同一个文件的时候,如果请求的路径不变,后面的多次请求直接从浏览器的缓存上面获取数据,导致服务器上的数据发生更改的时候,无法拿到服务器上面更新的数据

二/ 解决方案

  方案一 :  在路径上面添加一个可变的参数

     url ? id = Math.random();

     url ? id = new Date().getTime();

  方案二 : 比较服务器上文件的最后修改时间

            当使用ajax请求服务器数据时,会将服务器文件最后一次的修改时间发送到服务器上, 比较服务器文件两次的修改时间.如果相等 直接从浏览器的缓存上获取数据, 如果不相等, 先删除浏览器缓存的数据 在获取服务器上更新后的数据
    设置请求头:  xhr.setRequestHeader("if-modfied-since","0");
           
            
           

    

   

猜你喜欢

转载自www.cnblogs.com/self-hard/p/10310562.html