- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
深入浅出AJAX
董艳琴
2016.7.14
AJAX概念:
2
什么是AJAX:Ajax:Asynchronous JavaScript And XML
异步的javascript和xml
为什么要使用AJAX?
是为了解决传统web应用当中“发送请求-等待响应”这种模式的弊端而创建的技术。
传统模式的弊端是:
浏览器在发送完请求之后,只能等待服务器的响应,用户不能做其它的操作,浏览器发送完请求,会抛弃整个页面,等待服务器返回新的页面,也就是说,浏览器和服务器之间交互的数据量很大,不能够做到按需获取数据。
AJAX 原理:
3
通过浏览器内置的一个对象XmlHttpRequest异步地向服务器发送请求,服务器在处理完请求之后,返回数据给XmlHttpRequest,通过javascript,可以获取XmlHttpRequest中的数据,然后,使用该数据更新页面。整个过程当中,用户不用等待服务器的响应。
所谓异步,指的是浏览器并没有抛弃整个页面,用户仍然可以操作原有的页面,也就是,不是通过表单提交的方式向服务器发送请求。
HTTP协议:
4
HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。
一个完整的HTTP请求过程,通常有下面7个步骤:
1.建立TCP连接
2.Web浏览器向Web服务器发送请求命令
3.Web浏览器发送请求头信息
4.Web服务器应答
5.Web服务器发送应答头信息
6.Web服务器向浏览器发送数据
7.Web服务器关闭TCP连接
一个HTTP请求一般由四部分组成:
5
1.HTTP请求的方法或动作,比如是GET还是POST请求
2.正在请求的URL,总得知道请求的地址是什么吧
3.请求头,包含一些客户端环境信息,身份验证信息等
4.请求体,也就是请求正文,请求正文中可以包含客户提交的查询字符串信息,表单信息等等
请求头和请求体之间又一个空行,表示请求头结束了,接下来的内容就是请求体。
请求方式GET和POST
6
GET:一般用于信息获取,使用URL传递参数,对所发送的信息数量有限制,一般在2000个字符。(默认的)。一般是用于查询信息,而不是修改信息。
POST:一般用于修改服务器上的资源,对所发送信息的数量无限制。
HTTP响应:
7
一个HTTP响应一般由三部分组成:
1.一个数字和文字组成的状态码,用来显示请求是成功还是失败
2.响应头,和请求头一样包含许多有用的信息,例如服务器类型、日期时间、内容类型和长度等
响应头和实体内容之间要用空行隔开
HTTP状态码 status
8
HTTP状态码由3位数字构成,其中首位数字定义了状态码的类型:
1**:信息类,表示收到Web浏览器请求,正在进一步的处理中
2**:成功,表示用户请求被正确接收、理解和处理。例如:200 OK
3**:重定向,表示请求没有成功,客户必须采取进一步的动作
4**:客户端错误,表示客户端提交的请求有错误,例如:404 NOT Found,表示请求中所引用的文档不存在
5**:服务器错误,表示服务器不能完成对请求的处理:如 500
XMLHTTPRequest对象
9
作用:XMLHTTPRequest对象用于在后台与服务器交换数据
创建XMLHTTPRequest对象:
所有现代浏览器 (IE7+、Firefox、Chrome、Safari 以及 Opera) 都内建了 XMLHttpRequest 对象:
xmlHttpRequest = new XMLHttpRequest();
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:
xmlhttp=new ActiveXObject(Microsoft.XMLHTTP);
xmlHttpRequest 的属性:
10
readyState
HTTP 请求的状态。当一个 XMLHttpRequest 初次创建时,这个属性的值从 0 开始,直到接收到完整的 HTTP 响应,这个值增加到 4。
readyState 的值不会递减,除非当一个请求在处理过程中的时候调用了 abort() 或 open() 方法。每次这个属性的值增加的时候,都会触发 onreadystatechange 事件句柄。
5 个状态中每一个都有一个相关联的非正式的名称,下表列出了状态、名称和含义:
xmlHttpRequest 的属性:
11
responseText:获得字符串形式的响应数据
responseXML:获得XML形式的响应数据
status:由服务器以数字形式返回的HTTP状态代码。如 200 表
文档评论(0)