jQuery AJAX中readyState与status的区别与联系

所属分类: 网络编程 / AJAX相关 阅读数: 1507
收藏 0 赞 0 分享

作为web前端大杀器之一的AJAX,它的出现颠覆了很多人对web前端的理解,从我个人的角度看来,如果说1996年html/css/JavaScript三神器的终于集齐,使得web前端拥有了召唤神龙的能力,那么ajax就是三神器召唤出来的第一条神龙,从此以后,前后端代码拥有了完全分开的可能,在遇见要向后台传参之类的问题时,前端程序猿们都可以自信的喊出:竜が我が敵をくらえ。。。。。

在使用AJAX时,这里我用的是原生的js而不是jQuery等框架,因为女王告诉我们原生的才是最强大的。。。。

话不多说,先看代码

这里写图片描述 

这段代码构造一个XHR对象的实例request,并用它来建立异步请求。在onreadystatechange事件中,我们发现有readyState与status两个属性,其中readyState获取AJAX状态值,其值与含义如下:

0:请求未初始化,open方法还未调用

1:服务器连接已建立,open已调用

2:请求已接受,即收到头信息

3:请求处理中,即收到响应主体

4:请求完成,即响应完成

而status则获取HTTP状态码,其由三位数字组成,第一位数与含义如下:

1xx:表示服务器收到web浏览器的请求,正在处理

2xx:成功,表示用户请求被正确接受、理解和处理

3xx:重定向,表示请求没有成功,客户需要采取进一步动作

4xx:客户端错误,表示客户端提交的请求错误

5xx:服务器错误,表示服务器不能完成对请求的处理

那么AJAX状态值与HTTP状态码之间有什么区别与联系呢?这是一个值得思考的问题,虽然其对编程本身没有用,但秉着知其然更要知其所以然的道理,我们还是来研究一下。

众所周知,AJAX的核心是XHR对象,在AJAX执行过程中,readyState的值从0开始变化,当AJAX运行到send方法调用时,发送HTTP请求,HTTP请求安装步骤执行,此时status的值开始发生变化,AJAX运行机制等待HTTP请求返回结果。最后,当HTTP请求返回结果后,无论HTTP请求成功还是失败、也不管是否请求到正确信息,AJAX的运行机制都会继续执行,直到完成运行或者出错为止。这就是我理解的AJAX状态值与HTTP状态码之间的关系。
不知道我这样理解大家是否可以接受,如果有不清楚或者认为有错的地方,欢迎大家在评论区指出。阿里嘎多。

更多精彩内容其他人还在看

ajax中文乱码问题解决方案

ajax中文乱码问题在中文中经常会出现这种问题,其实只要稍加注意就不会出现ajax中文乱码这回事情了,接下来为大家详细介绍下如何解决这类问题
收藏 0 赞 0 分享

jquery ajax实现批量删除具体思路及代码

回调函数,在请求完成后需要进行的操作:此处是把选中的checkbox去掉,接下来为大家详细介绍下,感兴趣的朋友可以参考下哈,希望对你有所帮助
收藏 0 赞 0 分享

JQuery+ajax实现批量上传图片(自写)

jquery+ajax方式实现单张图片上传的代码是可以搜的到,实现批量上传图片的程序却没搜索到于是自己写了个,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

利用Ajax实现在脚本里传值实例介绍

Ajax实现在脚本里传值可以解决实际上的一些问题,本文实现了一下,感兴趣的朋友可以参考下,希望可以帮助到你
收藏 0 赞 0 分享

jQuery+Ajax实现表格数据不同列标题排序(为表格注入活力)

CSS也使得表格的布局越来越光彩耀人。但是,无论如何,都掩饰不了那些包装下的死板,接下来为大家介绍下让那些死板的数据 更具有可读性、可用性
收藏 0 赞 0 分享

jQery ajax——load()方法示例介绍

load(url,[data],[callback])url:加载的页面地址;data: 可选项,发送到服务器的数据,格式是key/value;callback:可选项,回调函数,示例代码如下
收藏 0 赞 0 分享

滑轮滚动到页面底部ajax加载数据配合jsonp实现探讨

滚动下拉到页面底部加载数据是很多瀑布流网站的做法,那来看看配合jsonp是如何实现的吧,小菜总结记录之用特在此与大家一起分享,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

ajax 登录功能简单实现(未连接数据库)

未连接数据库下实现ajax 登录功能判断登陆成功与失败,喜欢ajax的朋友可以参考下哈,希望对大家有所帮助
收藏 0 赞 0 分享

AJAX和WebService实现邮箱验证(无刷新验证邮件地址是否合法)

首先在项目里面添加服务引用,验证 Email 地址是否正确(邮件地址合法、只是域名正确、邮件服务器没有找到等等)感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

AJAX和三层架构实现分页功能具体思路及代码

本文涉及到AJAX和三层架构方面的知识,在学习分页的同时也巩固了一下它们的相关知识,适合初学者的你
收藏 0 赞 0 分享
查看更多