前提
上一遍博客中主要介绍关于AJAX学习过程的一些理论知识,这篇文章从基础开始分析,毕竟AJAX是基础是HTTP请求,这篇文章也就是从HTTP请求开始。
HTTP请求
1、建立TCP连接
2、Web浏览器向Web服务器发送请求命令
3、Web浏览器发送请求头信息
4、Web服务器应答
5、Web服务器发送应答头信息
6、Web服务器向浏览器发送数据
7、Web服务器关闭TCP连接
HTTP请求四部分组成:
1、HTTP请求的方法或动作,用到AJAX中就是GET还有POST请求(GET请求获取信息,用于查询,发送信息数量有限制;POST修改服务器上的资源,发送数量无限制)
2、正在请求的URL
3、请求头,包含一些客户端环境信息
4、请求体,请求正文,包含提交的查询字符串
HTTP响应
1、一个数字和文字组成的状态码,显示成功还是失败
2、响应头,与请求头对应,包含许多有用的信息,服务器类型,日期,内容类型等
3、响应体,也就是响应正文
HTTP请求状态码
1、1XX:信息类,表示收到web浏览器请求,正在进一步的处理中
2、2XX:成功,表示用户请求被正确的接收
3、3XX:重定向,表示请求没有成功,客户必须采取进一步的动作
4、4XX:客户端错误,表示客户端提交的请求有错误
5、5XX:服务器错误,表示服务器不能完成对请求的处理
为什么学习AJAX之前介绍这么多HTTP,原因在这呢
AJAX中最重要的一部分就是XMLHTTPRequest,利用XMLHTTPRequest取得响应
XMLHttpRequest取得响应几种形式
1——ResponseText:获得字符串形式的响应数据
2——ResponseXML:获得XML形式的响应数据
3——Status和statusText:以数字和文本形式返回HTTP状态码
4——GetAllResponseHeader():获得所有的响应报头
5——GetResponseHeader():查询响应中的某个字段的值
XMLHttpRequest取得响应的几种状态,主要是readyState属性
0:请求未初始化,open还没有调用
1:服务器连接已建立,open已经调用了
2:请求已接收,接收到了头信息
3:请求处理中,接收到响应主体
4:请求已完成,且响应已就绪,响应完成了
总结
之所以选择用大量的篇幅来介绍HTTP,AJAX是基于HTTP协议,既然作用于协议,就需要对这些理论好好思考一下,同时小编也是在面试的过程深有体会,脑力能反应出来,但是真正介绍就没有墨水了,其实我更认为还是自己没有真正理解这个东西。还有一点自己的认识就是前端的学习,一定要稳扎稳打,这个基础还是很重要的,最近接触的一些知识就是angluarJS,Node.js其实基础都是JavaScript,可惜我的JavaScript编写能力并不咋样,只能好好补求了!
PS:下篇文章主要介绍AJAX在JavaScript还有jQuery中的使用方法,分别对应的get,post的使用方式。