美文网首页
慕课网AJAX学习笔记

慕课网AJAX学习笔记

作者: 黄金原野 | 来源:发表于2018-07-19 14:55 被阅读9次

Ajax全称Asynchronous Javascript And XML,意为异步的JavaScript和XML。

基本概念

XMLHttpRequest(XHR): 构造XMLHttpRequest对象

var request;
if(window.XMLHttpRequest){
    request = new XMLHttpRequest(); //IE7+, Firefox, Chrome, Opera...
} else {
    request = new ActiveXObject("Microsoft.XMLHTTP");   //IE5, IE6
}

AJAX使用HTTP开始请求,不建立持久的连接

完整的HTTP请求过程(请求到响应)

  1. 建立TCP连接
  2. Web浏览器向Web服务器发送请求命令
  3. Web浏览器发送请求头信息
  4. Web服务器应答
  5. Web服务器发送应答头信息
  6. Web服务器向浏览器发送数据
  7. Web服务器关闭TCP连接

HTTP请求的组成

  1. HTTP请求的方法或者动作(GET or POST)
  2. 正在请求的URL(请求地址是什么)
  3. 请求头(客户端环境信息,身份验证信息)
  4. 请求体(请求正文,含表单信息等,与请求体之间有空行)

其中:
GET
信息获取,不会影响数据本身(类似查询)
使用URL传递参数
对发送信息的数量有限制(2000字符)
幂等(查询多少次都没有影响)

POST
修改服务器资源
对发送的信息无限制

HTTP 响应的组成

  1. 数字和文字组成的状态码,用来显示请求成功还是失败
  2. 响应头,包含许多有用的信息(服务器类型,日期时间,内容类型,长度)
  3. 响应体,即响应正文

HTTP状态码类型

  1. 1XX: 信息类,表示收到Web浏览器请求,正在进一步处理
  2. 2XX: 表示用户请求被正确接受,理解和处理
  3. 3XX: 重定向,表示请求没有成功,需要进一步操作
  4. 4XX: 客户端错误,表示客户端提交的请求有错误,如404 NOT FOUND(请求中引用的文档不存在)
  5. 5XX: 服务器错误,表示服务器不能完成对请求的处理,如500

XHR发送请求方法

open(method, url, async)    //method: GET or POST, async: 同步or异步(一般是异步,true)
setRequestHeader()
send(string)

XHR获得响应 方法与属性
responseText: 字符串形式的响应数据
responseXML:XML形式
status,statusText: HTTP状态码
getAllResponseHeader(): 获取所有响应报头
getResponseHeader(): 查询响应中某个字段的值
readyState: 监听服务器响应有没有成功
0: 请求未初始化(open未调用)
1: 服务器连接已建立(open已调用)
2: 请求已接收(收到头信息)
3: 请求处理中(收到响应主体)
4: 请求已完成

相关文章

网友评论

      本文标题:慕课网AJAX学习笔记

      本文链接:https://www.haomeiwen.com/subject/lgjtmftx.html