在ie系列下,$.get()方法在url地址固定时,会缓存返回结果,导致不可预料的问题。但在火狐下,则不会缓存。

要解决该问题有很多办法,最直接的是把$.get()方法换成$.ajax(),然后配置cache:false即可。我不喜欢$.ajax()繁琐的配置方式,可采取以下最简单方式实现:

在$.get()的data后面加上新的随机参数,如{data: mydata, stamp: Math.random() },由于每次数据不一样,故请求后返回的数据不会缓存。

另外也可把$.get()改成$.post(),也可解决此问题

 

let url="http:localhost:8080/static/data.json?time="+ Math.random();

$.get(url,function(response){
    
  console.log(response)
});

  

 posted on 2023-01-12 11:20  boye169  阅读(82)  评论(0编辑  收藏  举报