Vit*_*.us 3 javascript ajax internet-explorer caching windows-desktop-gadgets
我创建了这个类来从web获取文件以使用Ajax检查新版本.此代码在IE8上的Windows小工具上运行.但由于缓存,我遇到了麻烦.有没有办法修复此Ajax类以禁用缓存?
PS:我不使用任何库或框架.
var ClassAjax = function() {
this.data = null;
var that = this;
this.get = function(url, send) {
var ajax = new function ObjAjax() {
try{ return new XMLHttpRequest(); }
catch(e){try{ return new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e){ return new ActiveXObject("Microsoft.XMLHTTP"); }}
return null;
}
ajax.onreadystatechange = function() {
if(ajax.readyState == 1) { that.onLoading(); }
if(ajax.readyState == 4) { that.data=ajax.responseText; that.onCompleted(that.data); }
}
ajax.open("GET", url, true);
ajax.send(send);
};
this.onLoading = function() {
//function called when connection was opened
};
this.onCompleted = function(data) {
//function called when download was completed
};
}
var request = new ClassAjax();
request.onCompleted = function(data) { alert(data); }
request.get('http://exemple.com/lastversion.html', null);
Run Code Online (Sandbox Code Playgroud)
您可以将当前时间戳作为变量传递到url中,如下所示:
var timestamp = new Date().getTime();
ajax.open("GET", url+'?ts='+timestamp, true);
Run Code Online (Sandbox Code Playgroud)
此外,您可以使用正确的标头强制在服务器端重新加载页面
| 归档时间: |
|
| 查看次数: |
2361 次 |
| 最近记录: |