xmlhttp请求状态总是返回0
xmlhttp request status always returns 0
我有一个函数,它使用普通的旧JS来获取请求。
function get(url,funct){
var xmlhttpget = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
xmlhttpget.onreadystatechange=function(){
if (xmlhttpget.readyState==4 && xmlhttpget.status==200){
funct(xmlhttpget.responseText);
}
}
xmlhttpget.open("GET",url,true);
xmlhttpget.send();
}
我是这样使用的:
get(url,function(resp){window.alert(resp;});
当我的回调函数停止工作时,我将get()
函数修改为以下内容进行调试:
function get(url,funct){
var xmlhttpget = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
xmlhttpget.onreadystatechange=function(){
window.alert("ready state: "+xmlhttpget.readyState+" // status: "+xmlhttpget.status);
if (xmlhttpget.readyState==4 && xmlhttpget.status==200){
window.alert("responded...");
funct(xmlhttpget.responseText);
}
}
window.alert(url);
xmlhttpget.open("GET",url,true);
xmlhttpget.send();
}
有了这一点,我发现,在每次readystate更改期间,readystate都会从1到2再到4,但状态总是保持在0,所以我的回调永远不会被调用,然而,当我将提醒的url复制到浏览器时,它运行良好。
怎么回事?我的浏览器正在缓存页面吗?我如何修复它(用php在请求的页面上设置一个特定的标题??)?
哦,不确定这是否相关,但调用该函数的页面位于一个框架内,该框架的父文档包含相同的JavaScript文件。
尝试打印对象的statusText
。您可能会遇到浏览器安全策略。
相关文章:
- JSONP请求返回结果,但也触发error_callback
- "日期“;AJAX请求返回的类型值未定义
- Ajax请求返回空的数据字符串,但首先得到了正确的数据
- 请求准备一个文件并返回路径,允许用户在准备好时下载
- 如何解决“;错误所请求的URL返回500-内部服务器错误”;
- Ajax调用返回当前html页面,而不是请求的文件
- DreamFactory REST API POST休息/用户/会话请求总是在IE9中返回错误
- PhantomJs在控制台中发出http请求时不会返回任何状态
- 如何显示从Ajax请求返回的数组.使用Yii2
- ASP.NET WebMethod将整个页面返回给JQuery ajax请求
- 使用Javascript数组或JSON来存储AJAX请求的返回值,以备将来使用
- 为什么我在Cloud9中的http请求总是返回错误
- 当jQuery返回错误时,如何在jQuery中重新发送ajax请求
- AWS API网关返回400错误请求,但Postman工作正常
- WordPress Ajax请求返回0
- Ajax请求返回模块设置数据
- 有函数返回请求数据+要执行的函数
- 在Batman.js中返回请求结果的问题
- 如何在承诺中返回请求
- Javascript没有返回请求