我想下载文件以供进一步使用,这是我找到的最好的方法,但是当我看到由beforeSend Event创建的Log时,URL已被queryString修改为:
http://blabla.com/test.swf?_=1346484617818
数字也是随机的。
我想知道为什么会这样!
var url = 'http://blabla.com/test.swf'; $(document).ready(function () { $.ajaxSetup({ 'beforeSend':function () { console.log(this.url);} }); $.ajax({ url:url,dataType:"script",}); });
解决方法
只需使用cache:true。 jQuery会自动为您的URL末尾添加一个时间戳,确保永远不会缓存ajax请求。
来自jquery docs
Default: true,false for dataType ‘script’ and ‘jsonp’
If set tofalse
,it will force requested pages not to be cached by the browser.
Setting cache tofalse
also appends a query string parameter,
“_=[TIMESTAMP]
“,to the URL.
$.ajaxSetup({'cache':true});