`

xmlhttp.status == 0& xmlhttp.status == 200

阅读更多
xmlhttp.status == 0 是个什么样的情况?
Ajax 中,我们常常用 xmlhttp.status == 200 判断读取是否完成。

但在本地测试时,如果是双击打开 HTML 网页,或直接把网页文件拖到浏览器中打开,在IE或IE内核的浏览器下返回状态 xmlhttp.status == 200 。而其他的各浏览器返回的状态 xmlhttp.status == 0,个人认为这是因为这种情况下,并没有通过 HTTP 协议来走,也就不存在 200 的状态码了。


xmlHttp.status的值(HTTP状态表)

 
 
100——客户必须继续发出请求 
101——客户要求服务器根据请求转换HTTP协议版本 

200——交易成功 
201——提示知道新文件的URL 
202——接受和处理、但处理未完成 
203——返回信息不确定或不完整 
204——请求收到,但返回信息为空 
205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件 
206——服务器已经完成了部分用户的GET请求 

300——请求的资源可在多处得到 
301——删除请求数据 
302——在其他地址发现了请求数据 
303——建议客户访问其他URL或访问方式 
304——客户端已经执行了GET,但文件未变化 
305——请求的资源必须从服务器指定的地址得到 
306——前一版本HTTP中使用的代码,现行版本中不再使用 
307——申明请求的资源临时性删除 

400——错误请求,如语法错误 
401——请求授权失败 
402——保留有效ChargeTo头响应 
403——请求不允许 
404——没有发现文件、查询或URl 
405——用户在Request-Line字段定义的方法不允许 
406——根据用户发送的Accept拖,请求资源不可访问 
407——类似401,用户必须首先在代理服务器上得到授权 
408——客户端没有在用户指定的饿时间内完成请求 
409——对当前资源状态,请求不能完成 
410——服务器上不再有此资源且无进一步的参考地址 
411——服务器拒绝用户定义的Content-Length属性请求 
412——一个或多个请求头字段在当前请求中错误 
413——请求的资源大于服务器允许的大小 
414——请求的资源URL长于服务器允许的长度 
415——请求资源不支持请求项目格式 
416——请求中包含Range请求头字段,在当前请求资源范围内没有range指示值,请求也不包含If-Range请求头字段 
417——服务器不满足请求Expect头字段指定的期望值,如果是代理服务器,可能是下一级服务器不能满足请求 

500——服务器产生内部错误 
501——服务器不支持请求的函数 
502——服务器暂时不可用,有时是为了防止发生系统过载 
503——服务器过载或暂停维修 
504——关口过载,服务器使用另一个关口或服务来响应用户,等待时间设定值较长 
505——服务器不支持或拒绝支请求头中指定的HTTP版本 

1xx:信息响应类,表示接收到请求并且继续处理 
2xx:处理成功响应类,表示动作被成功接收、理解和接受 
3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理 
4xx:客户端错误,客户请求包含语法错误或者是不能正确执行 
5xx:服务端错误,服务器不能正确执行一个正确的请求

分享到:
评论

相关推荐

    ajax经典实例大全1,参看源码附件。。。。。。

    ajax经典实例大全1 <!... <meta charset="utf-8"> ... if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open

    Ajax原理分析及其实现的简单代码

    让更多人了解ajax技术.function _open... if(xmlHttp.readyState == 4 && xmlHttp.status == 200) { resultHandle=xmlHttp.responseText; alert('返回结果:'+resultHandle); } };//执行回调函数 }

    用 ajax + asp.net 采集文章

    用 ajax + asp.net 采集文章 试验型的项目。 原先用多线程来采集,但是觉得多线程采集要显示采集进度... if (this.XmlHttp.status == 200) { this.ProcessDataEvent(); } } } function processData() { } }

    asp+ajax静态分页

    if (xmlhttp.readyState==4 && xmlhttp.status==200) { //如果xmlhttp.readyState==4并且xmlhttp.status==200时,执行条件中的程序,其中readyState有五个值,4为请求完成,是客户端向服务器提交的数据成功到达,...

    WEB开发 之 AJAX - onreadystatechange 事件.docx

    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById('myDiv').innerHTML = xmlhttp.responseText; } }; xmlhttp.open('GET', 'ajax_info.txt', true); xmlhttp.send(); ``` 在...

    Ajax精短实例教程

    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { var text = xmlhttp.responseText; // 或者 var xmlDoc = xmlhttp.responseXML; } }; ``` ### 完整示例 下面是一个完整的Ajax GET请求示例,用于从...

    一个无刷新效果定时自动更新页面的例子

    if (XmlHttp.status == 200) { setTimeout("pollServer()", 1000); refreshTime(); } else { alert("HTTP error: " + XmlHttp.status); } } } ``` 3. **发送请求**:打开连接并发送到服务器。 ```...

    用法JavaScript实现ajax的实例代码_.docx

    if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) { alert('success'); } else { alert('fail'); } }; } // POST请求 function doPost(url, data) { createXmlHttpRequest(); xmlHttp.open(...

    .net ajax示例

    if(xmlHttp.status==200){//成功 if(xmlHttp.responseText==""){ if(isEn==1){ document.getElementById("spanpwd").innerHTML="<font color='red'>Password error!</font>" ; }else{ document.getElementById...

    三级联动Ajax菜单(包含省市数据)

    if(xmlHttp.status==200){ if(type=="city"){ showcity(); }else if(type="area"){ showarea(); } } } } function showcity(){ document.getElementById("city").innerHTML=xmlHttp....

    简单的PHP+MySQL+AJAX留言板实例

    if (request.status == 200) document.getElementById("output").innerHTML = request.responseText; else if (request.status == 404) alert("目标地址不存在"); else alert("警告: 错误代码 " + request....

    神奇的_ajax框架

    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { document.getElementById('result').innerHTML = xmlHttp.responseText; } }; ``` - `readyState`属性表示请求/响应过程中的不同状态: - **0**:...

    原生JavaScript实现Ajax的方法_.docx

    if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) { // 请求完成且响应成功 alert('success'); } else { alert('fail'); } }; } ``` #### 四、发送POST请求 除了GET请求外,还可以发送POST请求。...

    ASP.NET Ajax技术文档4

    if (xmlHttp.readyState === 4 && xmlHttp.status === 200) { // 处理成功响应的情况 console.log(xmlHttp.responseText); } else if (xmlHttp.readyState === 4) { // 处理其他响应状态 console.error('请求...

    WEB开发 之 AJAX - 向服务器发送请求.docx

    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("myDiv").innerHTML = xmlhttp.responseText; } } ``` 使用AJAX技术可以实现客户端和服务器之间的异步通信,提高Web应用程序...

    ajax进度条,ajax进度条

    if (xmlHttp.status == 200) { setTimeout("pollServer()", 2000); } } } ``` `goCallback`函数用于检查服务器是否成功响应。如果响应完成且状态码为200,则每隔2秒调用一次`pollServer()`函数来查询上传进度。...

    ajax方式载入外部页面数据的层打开效果.txt

    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { // 处理响应数据 $("Loading").innerHTML = xmlhttp.responseText; } else if (xmlhttp.readyState == 4 && xmlhttp.status == 404) { // 处理错误...

    可用 js ajax代码

    if (xmlHttp.status == 200) { var u_name = document.getElementById("reg_name"); var uId = xmlHttp.responseText; if (uId == "1") { u_name.innerHTML = "用户已存在!"; } else { u_name.innerHTML = "...

    ajax 教程

    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { console.log(xmlHttp.responseText); } }; ``` #### 四、AJAX 的优势 1. **提高用户体验**:用户可以在不离开当前页面的情况下与网页互动,提高了...

    ajax使用例子

    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { // 请求完成且响应状态为200 OK var v = xmlHttp.responseText; // 获取服务器响应文本 alert(v); // 显示响应文本 } } ``` #### 四、关键代码解释 ...

Global site tag (gtag.js) - Google Analytics