当前位置:首页 > 日记 > 正文

的差异和使用jQueryAJAXreadyState和地位

的差异和使用jQueryAJAXreadyState和地位
在前几篇文章中,我们分析了jQuery的异步和同步Ajax,以及一些不寻常的处理。我们不觉得关于Ajax的发生和清晰的状态。现在我们来讨论ajax的状态。

jQuery ajax函数的源代码如下所示:
无功getxmlhttprequest =函数(){()
如果(窗口。XMLHttpRequest){
主流的浏览器提供了XMLHttpRequest对象 / /
返回新的XMLHttpRequest();
}
如果(窗口。ActiveX对象){
/ /低版本的IE浏览器不提供XMLHttpRequest的对象
具体实现ActiveX对象 / /你必须使用IE浏览器
返回新的ActiveX对象(微软。XMLHTTP );
}
};
VaR XHR = getxmlhttprequest();
xhr.onreadystatechange =函数(){
如果(xhr.readystate = = = = = = 200 { 4 XHR。状态)
术后成功/
/ /数据xhr.responsetext
}
};
Xhr.open(类型
Xhr.send();
发生的是什么

readyState是XMLHttpRequest对象来确定当前的XMLHttpRequest对象是一个属性。

readyState共有5个国家的价值观,这是0 ~ 4,其中每一个代表不同的含义,如下表所示:

0未初始化的状态:在这一点上,一个XMLHttpRequest对象被创建

1、准备发送状态:此时,XMLHttpRequest对象的方法打开已被调用,和XMLHttpRequest对象是准备发送一个请求到服务器端。

2已经发送状态:此时,一个请求已通过发送方法发送到服务器,但尚未收到响应。

3是接收状态:此时,HTTP响应头信息已被接收,但消息正文部分未被完全接收。

4完整响应状态:此时,HTTP响应已收到

是什么状况

现状是XMLHttpRequest对象表示响应的HTTP状态代码的属性。

HTTP1.1协议下的HTTP状态代码,可以总共分为5类,如下表所示:

1xx服务器接收请求并需要继续处理。例如,101状态代码表示服务器将通知客户端使用更高版本的HTTP协议。

2xx请求成功。例如,200状态代码表明响应头或数据体,请求将返回此响应。

3xx重定向。例如,302状态代码,这是一个临时的重定向,请求将包含一个新的URL地址,和客户端将请求到新地址。

4xx客户端错误。例如,404状态代码表示客户端请求的资源不存在。

的5xx服务器是错误的。例如,500状态代码表示服务器遇到意外情况,导致完成响应失败。一般来说,当代码出错时,这个问题就会出现。

问题抛

为什么在同一时间onreadystatechange函数实现readyState状态吗

我们知道,发生= = 4表示响应请求是成功的,为什么呢有了这个问题,让我们开始一些实验。

只使用readyState判断

Javascript结束的实现代码如下所示:
无功getxmlhttprequest =函数(){()
如果(窗口。XMLHttpRequest){
返回新的XMLHttpRequest();
}
如果(窗口。ActiveX对象){
返回新的ActiveX对象(微软。XMLHTTP );
}
};
VaR XHR = getxmlhttprequest();
xhr.onreadystatechange =函数(){
如果(xhr.readystate = 4){
警报(XHR。responseText);
}
};
Xhr.open(
Xhr.send();
我们在服务器端抛出异常:
公共部分类数据:system.web.ui.page
{
protected void page_load(object sender,EventArgs e)
{
抛出新的异常(错误);
}
}
运行Javascript代码,提示窗口如下所示:
服务的响应是错误的,但它仍返回信息,这不是我们想要的结果。打开提琴手的控制,你可以看到data.aspx返回一个500响应,但由于只有发生进行判断的使用,忽视结果返回到500或200,只要作为响应返回,接下来的Javascript代码的实现,其结果将导致不可预知的错误。所以这是不可能使用readyState只判断。

另一种思维方式是,如果状态代码返回到200,则表示响应成功。可以使用readyState不是使用状况做出判断好吧,带着这个问题,继续做实验。

仅用状态判断

Javascript代码的代码实现如下:
无功getxmlhttprequest =函数(){()
如果(窗口。XMLHttpRequest){
返回新的XMLHttpRequest();
}
如果(窗口。ActiveX对象){
返回新的ActiveX对象(微软。XMLHTTP );
}
};
VaR XHR = getxmlhttprequest();
xhr.onreadystatechange =函数(){
如果(xhr.status = 200){
警报(发生+ xhr.readystate + XHR。responseText);
}
};
Xhr.open(
Xhr.send();
事实上,结果并不像预期的那样,响应代码确实返回了200,但是总共弹出了3个窗口!第一个是readyState = 2窗口,二是发生3test窗口,和第三的发生4test.from这个窗口,我们可以看到,onreadystatechange函数执行不触发只有当readyState改到4,但这一变化将触发发生。它可以可以看出,使用状态是不可行的。

进一步的思考

从以上的实验,我们可以知道,当判断readyState和地位是不可或缺的。因此将发生和状态序列产生影响呢我们可以转移到状态在第一判断前,代码如xhr.status xhr.readystate 4 = = = = 200 = =。

事实上,这对最终结果没有影响,但在中间的表现是不同的。从过去的实验中,我们知道,每一个变化触发onreadystatechange函数readyState。如果我们首先判断情况,我们会判断状态一次。虽然性能是非常小的,但我们仍然应该持有极端代码追求的理念,在审判前发生。

以上是不同的,详细的讲解了jQuery的Ajax readyState状态经萧边介绍,希望能对你有帮助。如果你有任何问题,请给我留言,萧边会及时给您回复。谢谢您支持网站。

相关文章

一个与Vue公司的双向结合的待办事

一个与Vue公司的双向结合的待办事

公司,简单实现,列表,双向,例子,前言 最近,我已经学会了Vue框架的基本原则。我见过一些技术博客和Vue的源代码的一些简单的实现。我有数据代理,深入了解数据劫持,模板解析,变化阵列的方法和双向绑定。所以,我试着去实践我学到的知识,使用Vue的基本…

ps还原风景照片的绚丽色彩

ps还原风景照片的绚丽色彩

风景,照片,绚丽,色彩,电脑软件,这幅画的原作的感觉是灰色的,无聊极了,但通过简单的后期制作,它可以恢复其应有的颜色,产生强烈的视觉冲击。为了恢复原来的彩色图像,我们使用PS和颜色;饱和度;命令,使图像色彩和色调的对比。然后通过可选和照片滤镜;为…

QQ同步助手如何备份通话记录

QQ同步助手如何备份通话记录

备份,通话记录,同步,助手,电脑软件,QQ同步助手可以备份QQ信息,特别是一些重要信息可以备份。我们的许多合作伙伴不知道如何检查它。这是细节,希望能帮到你。 QQ同步辅助备份通话记录方法 1、安装并打开QQ同步助手,点击主界面中的三个交叉选…

如何用ai作环图ai实现二维环图的简

如何用ai作环图ai实现二维环图的简

绘制,二维,如何用,简易,电脑软件,如何利用人工智能简单地绘制三维环状图在本教程中,我们主要介绍两种用ai绘制三维环图的方法。第一种方法主要是使用椭圆工具。第二种方法主要是使用饼图工具。这两种方法一般都比较难,这是适合初学者学习的。…

PS绘制一个超现实的瓢虫

PS绘制一个超现实的瓢虫

绘制,瓢虫,电脑软件,PS,在研究过去几天的思考,我们将与您分享制作小瓢虫图标设计教程PS图象处理软件。今天的主题很有趣,因为它是我们人类甲虫的朋友。 最终效果 1。用钢笔工具画出瓢虫的基本形状。 2,用画笔工具画出物体的明暗,使之立体化。 …

苹果电脑双系统如何删除Windows系

苹果电脑双系统如何删除Windows系

系统,双系统,删除,解决方案,苹果电脑,问题: 苹果Mac电脑的朋友们,安装了两个系统,一个是Mac系统,另一个是微软Windows系统,现在想删除Windows系统,不知道怎么操作 答案uff1a 有两种方法: 首先,打开启动,效用;双新兵训练营,助理;视角下的新窗口;以按钮…

如何设置Word2010阴影风格

如何设置Word2010阴影风格

如何设置,风格,电脑软件,在Word中我们可以做很多的工作,有时我们需要窗体的标题栏,一套不同颜色的细胞和底纹,底纹。那么这个设置底纹的样式在这里萧边介绍Word2010底纹的设置方法,希望对你有帮助。 Word2010底纹的样式设置方法 选择需要填充…

PS图象处理软件滤清器蓝色幻想银河

PS图象处理软件滤清器蓝色幻想银河

效应,银河,滤清器,图象,处理软件,PS图象处理软件的过滤器,使蓝魔银河明星效应的引入主要由PS过滤器。这个过滤器非常强大,它可以根据自己的想法产生许多不同的效果,喜欢它的学生可以学习。 PS图象处理软件滤清器蓝色幻想银河宇宙的明星效应的…

PS图象处理软件的多样化功能介绍

PS图象处理软件的多样化功能介绍

多样化,图象,处理软件,功能,电脑软件,当我们编辑图片时,我们经常需要给这些图片添加一些刷新效果。这一次我们需要使用强大的ps过滤功能。让我们一起学习。 PS图象处理软件的多样化功能介绍 1、DustScratches(可耻和划痕过滤器) 角色:您可以…

PS图象处理软件滤波器提取视频教学

PS图象处理软件滤波器提取视频教学

滤波器,图象,处理软件,视频教学,电脑软件,过滤器主要是用来实现图像的特效。它已经在PS图象处理软件的奇妙的作用。过滤器的操作很简单,但很难真正使用它。过滤器通常需要联合使用相同的信道,层,以达到最佳的艺术效果。如果你想将过滤器应用到…

文本编辑中文本的操作技巧

文本编辑中文本的操作技巧

文本,操作技巧,文本编辑,电脑软件,word文档可以用来编辑文本文档,编写各种文档文件,并设计您想要的布局。因此,如何在word文档中编辑文本在今天的中间,小编辑器在word文档中编辑文本中间的操作技巧。 word文档编辑文本中间的操作步骤 点击电…

计算机系统文件损坏,无法启动重新安

计算机系统文件损坏,无法启动重新安

无法启动,损坏,安装系统,系统文件,无法安装,问题: 朋友的计算机无法进入系统。引导显示系统文件已损坏。 因为以下文件损坏或丢失,Windows无法启动: Windows System32 配置系统。 您可以使用原始的引导软盘或CD-ROM来启动Windows安装程序来…