Javascriptajax的5种状态

在语用ajax(动态网站静态)Web 2引物的机会看到的readystae状态,感觉很实用,摘录如下:

0(未初始化)发送()方法还没有被调用。

1:(加载)已发送调用()方法,正在进行请求。

2:(加载)发送()方法已经完成,接收到整个响应。

3:(交互)响应正在解析中。

4:(完成)响应已解析,准备收割。

0(未初始化)也不叫发()方法

1(加载)调用发送()方法是发送请求

2(加载)(发送)方法完成后,已收到所有响应内容

3(交互)响应正在被解析。

4(完全响应)内容分析完成,客户机调用

对于国家发生的五种,其他的书都是模糊的。像基础Ajax(动态网页静态化)和ajax(动态网站静态)在行动似乎并没有提及这5个州的细节在所有。专业的AJAX(静态网站静态)不满意,但它仍然是可用的。

readyState有五种可能的值:

0(未初始化):对象已经创建,但还没有开放()方法

1(加载):已调用开放()方法,但请求尚未完成。

2(加载):请求已发送。

3(互动)已收到部分答复。

4(完整):所有数据都已收到,连接已关闭。

readyState有五个可能的值:

0(未初始化):(XML(标准接近)HttpRequest)对象已经创建,但还没有调用open()方法。

1(加载):已调用开放()方法,但请求尚未发送。

2(加载完成):请求已发送。

3(交互):可以接收响应数据的一部分。

4(完成):所有数据都已收到,连接已关闭。

在理解Ajax(动态Web站点静态)中:使用Javascript创建富Internet应用程序

readyState状态代码

XML的状态(标准化越来越近)HttpRequest对象

(0)初始化

未初始化的对象已经创建,但未初始化。(Open方法有)

(xml(标准化越来越近)HttpRequest)对象已经创建,但它尚未初始化(不叫开法)。

(1)加载

加载已创建对象,但发送方法未被加载

(xml(标准化越来越近)HttpRequest)对象已经创建,但尚未调用send方法。

(2)加载

已调用加载发送方法,但状态和头是

发送方法被调用,HTTP响应状态和头部不可用。

(3)交互

已收到某些数据的交互。调用responsebody和responseText属性,并且,和其他的两个是以下几方面。

数据的一部分已收到。但如果你叫responsebody和responseText属性在此时得到结果的一部分,会有一个错误,因为状态和响应头不完全可用。

(4)完成

完成所有已接收的数据,并提供完整的数据。

所有的数据都已经接收到完整的数据可以提取的responsebody和responseText属性。

根据五个州以上发生的几本书,我认为这是务实的ajax(动态网站静态)Web 2引物的地方,因为它是指接收的数据的分析,其他的书都没有提到这一点,这是(3)互动阶段为必要的过渡,在(2)到(4)负载之间的原因,即任务是什么。总之,我认为理想的解释方法,应当由国家定义:任务(目标)+过程+表达(或特征),这是更准确和容易理解。本试验总结如下:

readyState状态描述



(0)初始化

本期确认的xml(标准化越来越近)是HttpRequest对象创建和准备调用打开非初始化()方法,值0表示的对象已经存在,否则浏览器会错误的对象不存在。

(1)加载

在这个阶段,初始化XML(标准化越来越接近)HttpRequest对象,即调用open()方法,并设置对象的状态,根据参数(方法,URL,true),调用send()开始向服务器发送请求的值为1表示方法。该请求被发送到服务器。

(2)装货完毕

这个阶段从服务器端接收响应数据,但它只是服务器响应的原始数据,不能直接在客户端使用,2的值表示已经接收到所有响应数据,并准备下一阶段的数据解析。

(3)交互作用

这相位解析接收服务器端的响应数据,根据标题服务器响应返回的MIME类型,可以将数据转换为格式,可以通过responsebody,responseText和responseXML之外,它越来越接近标准化。它已经准备好调用客户机了。状态3表示数据正在被解析。

(4)完成

本期确认所有数据被输入到客户端的可用的格式,并分析已经完成。4值表示数据解析,数据可以通过XML相应的属性(标准化越来越得到)HttpRequest对象。

总之,整个xml(标准化越来越近)的HttpRequest对象的生命周期包括以下几个阶段:

创建-初始化请求-发送请求-接收数据-解析数据-完成

在具体的应用中,五个国家发生(XML(标准接近)的HttpRequest对象生命周期的所有阶段)的意义,你可以消除ajax(动态网站静态)神秘的核心(或非常模糊,在得到神秘,神秘或制造;在黑暗中,人们可见),迅速把握本质,减少学习挫折和自信心的提升是非常有用的。

例如,通过以下示例:

复制代码代码如下所示:

声明一个数组

Var初始化…,

请求被初始化成功 uff01…

请求正在发送中…,

成功uff01

正在接收数据…,

完成它!

数据正在被解析…,

完成它!

};

回调函数/内部代码片断

如果(xml(标准化越来越近)HTTP。发生= 4)

{

var = document.createelement跨度(跨度);

span.innerhtml =状态{ XML(标准化越来越近)HTTP readyState };

document.body.appendchild(跨度);

如果(XML(标准接近)http.status = = 200)

{

VaR的XML(标准化越来越近)=(标准化的XML文档越来越近)http.responsexml(标准化越来越近);

其他代码

}

不要忘记/销毁,以防止内存泄漏。

XML(标准化越来越接近);

其他{ }

var = document.createelement跨度(跨度);

span.innerhtml =状态{ XML(标准化越来越近)HTTP readyState };

document.body.appendchild(跨度);

}结果如下:

请求被初始化成功 uff01…

请求被发送成功uff01…

正在接收数据…完成它!

正在解析数据…完成它!



很容易理解xml(标准化越来越靠近)HttpRequest对象是在各个阶段做的。作为一个结果,很容易有一个非常简单的Ajax的核心部分的理解(动态网站静态)。