XMLHttpRequest对象(Ajax)的状态码(readystate) HTTP状态代
2018-11-28?14:19:00 来自 :XMLHttpRequest对象(Ajax)的状态码(readystate)? HTTP状态代码(status) ? ? XMLHttpRequest对象(Ajax)的状态码(readystate) 当一个XMLHttpRequest初次创建时,这个属性的值是从0开始,知道接收完整的HTTP响应,这个值增加到4。有五种状态: 状态0?(未初始化):?(XMLHttpRequest)对象已经创建或已被abort()方法重置,但还没有调用open()方法; 状态1?(载入):已经调用open() 方法,但是send()方法未调用,尚未发送请求; 状态2?(载入完成):?send()方法已调用,HTTP请求已发送到web服务器,请求已经发送完成,未接收到响应; 状态3?(交互):所有响应头部都已经接收到。响应体开始接收但未完成,即可以接收到部分响应数据; 状态4?(完成):已经接收到了全部数据,并且连接已经关闭。 readystate的值不会递减,除非当一个请求在处理过程中的时候调用了abort()或open()方法。每次这个属性的值增加的时候,都会触发onreadystatechange事件句柄。 ? HTTP状态代码(status) status是由服务器返回的HTTP状态代码,实际是一种辅状态判断,只是status更多是服务器方的状态判断。当readystate小于3的时候读这一属性会导致一个异常。 1xx—信息类:表示收到Web浏览器请求,正在进一步的处理中。 100:客户必须继续发出请求; 101:客户要求服务器根据请求转换HTTP协议版本。服务器转换协议。 2xx—成功:表示用户请求被正确接收,理解和处理。 200:OK; 201:提示知道新文件的URL。请求被创建完成,同时新的资源被创建。 202:共处理的请求已被接受,但是处理未完成。 203:文档已经正常的返回,但一些应答头可能不正确,因为使用的是文档的拷贝。 204:没有新文档。浏览器应该继续显示原来的文档。如果用户定期的刷新页面,而servlet可以确定用户文档足够新,这个状态代码是很有用的。 205:没有新文档。但是浏览器应该重置它所显示的内容。用来强制浏览器清除表单输入内容。 3xx—重定向:表示请求没有成功,客户必须采取进一步的动作。 300:请求的资源可在多处得到。 301:删除请求数据,所请求的页面已经转移至新的url。 302:所请求的页面已经临时转移至新的url。 303:所请求的页面可在别的url下被找到。 4xx—客户端错误:表示客户端提交的请求有错误。 404:NOT Found,意味着请求中所引用的文档不存在。 401:被请求的页面需要用户名和密码。 402:此代码尚无法使用。 403:对被请求页面的访问被禁止。 404:服务器无法找到被请求的页面。 405:请求中指定的方法不被允许。 406:服务器生成的响应无法被客户端所接受。 407:用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408:请求超出了服务器的等待时间。 409:由于冲突,请求无法被完成。 410:被请求页面不可用。 411:"Content-length“未被定义。如果无此内容,服务器不会接受请求。 412:请求中的前提条件被服务器评估为失败。 413:由于所请求的实体太大,服务器不会接受请求。 414:由于url太长,服务器不会接受请求。当post请求被转换为带很长的查询信息的get请求时,就会发生414错误。 415:由于媒介类型不被支持,服务器不会接受请求。 416:服务器不能满足客户在请求中指定的Range头。 5xx—服务器错误:表示服务器不能完成对请求的处理。 500:服务器产生内部错误。请求未完成。服务器遇到不可预知的情况。 501:请求未完成。服务器不支持所请求的功能。 502:请求未完成。服务器从上游服务器收到一个无效的响应。 503:请求未完成。服务器临时过载或当机。 504,网关超时。 505,服务器不支持请求中指明的HTTP协议版本。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |