ajax加载页面服务器返回 304 not modified
(编辑:jimmy 日期: 2024/11/15 浏览:3 次 )
既然你的服务器都返回 304 not modified
那说明在服务器上,你这个xml文件没有修改过,或者要加载的页面在本地没有被修改,本地缓存造成了这个问题
常用的防止被缓存的方法,就是在后面加一个随机数,或者你也可以加个时间戳
比如请求的时候
url = ".......xml?t=" + ( new Date()() ).getTime().toString();
本例中我采用的方法:
复制代码 代码如下:
var destination="test.html"
function goto(destination){
var ajaxobj=new AJAXRequest; // 创建AJAX对象,类在刚刚那个文件里了
ajaxobj.method="GET"; // 设置请求方式为GET
ajaxobj.url=destination+"?t="+( new Date() ).getTime().toString(); // 响应的URL,以后可以改为一些动态处理页,会用Ajax的都知道,这在页里可以有目的返回不同的数据
// 设置回调函数,输出响应内容,因为是静态页(这是我的需求嘛)所以所有内容都过来了
ajaxobj.callback=function(xmlobj) {
document.getElementById('page_content').innerHTML = xmlobj.responseText; //可要看好这句话哦
}
ajaxobj.send(); // 发送请求
}
那说明在服务器上,你这个xml文件没有修改过,或者要加载的页面在本地没有被修改,本地缓存造成了这个问题
常用的防止被缓存的方法,就是在后面加一个随机数,或者你也可以加个时间戳
比如请求的时候
url = ".......xml?t=" + ( new Date()() ).getTime().toString();
本例中我采用的方法:
复制代码 代码如下:
var destination="test.html"
function goto(destination){
var ajaxobj=new AJAXRequest; // 创建AJAX对象,类在刚刚那个文件里了
ajaxobj.method="GET"; // 设置请求方式为GET
ajaxobj.url=destination+"?t="+( new Date() ).getTime().toString(); // 响应的URL,以后可以改为一些动态处理页,会用Ajax的都知道,这在页里可以有目的返回不同的数据
// 设置回调函数,输出响应内容,因为是静态页(这是我的需求嘛)所以所有内容都过来了
ajaxobj.callback=function(xmlobj) {
document.getElementById('page_content').innerHTML = xmlobj.responseText; //可要看好这句话哦
}
ajaxobj.send(); // 发送请求
}
下一篇:jquery的ajax同步和异步的理解及示例