jQuery caches AJAX request in IE even though cache

2019-01-20 08:26发布

I have the following code

$.ajax({type: "GET",
  url: "/" + filename,
  dataType: "xml",
  cache: "false",
  success: function(xml)
{
    /* Parsing code here */
}});

In Chrome etc the requests are not cached, however they are in IE. Am I constructing my request properly?

2条回答
三岁会撩人
2楼-- · 2019-01-20 09:08

Perhaps it is the mimetype of the xml file you are returning? http://www.nerdydork.com/ie-json-caching-bug.html

One commenter on my blog suggested adding a time string to the json request:

I’m not going to trust in setting the cache to off in .ajaxSetup….

So just add a time string at the end of each json request, e.g.

$.getJSON( ‘/url/’, { data: 123, t: (new Date()).getTime() }, function(data) { //do whatever } );

查看更多
Lonely孤独者°
3楼-- · 2019-01-20 09:09

cache should be a boolean, not a string:

$.ajax({type: "GET",
  url: "/" + filename,
  dataType: "xml",
  cache: false,
  success: function(xml){
    /* Parsing code here */
  }  
});
查看更多
登录 后发表回答