异步
通过 XMLHttpRequest 函数来实现客户端和服务器端的异步处理
具体实现:
- 运用HTML和CSS来实现页面,表达信息;
- 运用XMLHttpRequest和Web服务器进行数据的异步交换;
- 运用JavaScript操作DOM,实现动态局部刷新;
XMLHttpREquest对象
- 不兼容IE6123456var request;if (window.XMLHttpRequest) {request = new XMLHttprequest();//IE7+,chrome,ff,safari.} else {request = new ActiveXobject('Microsoft.XmlHTTP');??}
HTTP请求
HTTP请求过程
- 建立TCP连接
- Web浏览器向Web服务器发送请求命令
- Web浏览器发送请求头信息
- Web服务器应答
- Web服务器发送应答头信息
- Web服务器向浏览器发送数据
- Web服务器关闭TCP连接
HTTP组成部分
- HTTP请求的方法或动作,比如是GET还是POST请求
- 正在请求的URL
- 请求头(如客户端环境信息,身份验证信息)
- 请求体,也就是请求 正文,请求好着呢个文中可以包含客户提交的 查询字符串信息,表单信息等等。
重点概念
- GET:
- 一般用信息获取
- 使用URL传递参数
- 对所发送信息的数量也有
POST:
- 一半用于修改服务器上的资源
- 对所发送的信息数量无限制
响应组成:
- 数字文字的状态码,显示请求的成功和失败
- 响应头
- 响应体
HTTP状态码
- 1XX:信息类,表示收到浏览器请求,正在处理
- 2XX: 成功,正确接受
- 3XX:重定向,请求失败
- 4XX:客户端错误,如 404 NOT
- 5XX:服务器错误,如 500
XMLHttpRequest发送请求:
open(method,url,async)
- method:规定HTTP发送请求的方式是get还是post,不区分大小写,一般来说用大写
- url:请求地址(相对地址或绝对地址)
- async:同步/异步(false/true),默认是异步也就是true,可以不用填写
send(string):
发送到服务器(该参数可以填或者不填—–get方法不填或填null,post:一般要填)
XMLHttpRequest取得响应
- responseText:获得字符串形式的响应数据
- responseXML:获得XML形式的响应数据(比较少)
- status和statusText:以数字和文本形式返回HTTP状态码
- getAllResponseHeader():获取所有的响应报头
- getResponseHeader():查询响应中的某个字段的值
readyState属性的变化代表服务器响应的变化
- 请求未初始化,open还没有调用
- 服务器连接已建立,open已经调用了
- 请求已接收,也就是接收到头信息了
- 请求处理中,也就是接收到了响应主体
- 请求已完成,且响应已就绪,也就是响应完成了