ajax的原理

ajax 周芙茜
文章标签: ajax

ajax 向后台请求数据,实现了与后台交互,动态改变数据

第一步,创建XMLHttpRwquest对象,需要考虑兼容性(ie低版本7以下)

if(XMLHttpRequest){
    var XHR = new XMLHttpRequest();//支持ie7+
}else{
    var XHR = new ActiveXObject("Microsoft.XMLHTTP");//支持ie5,ie6
}

第二步,使用open建立请求,参数(method,url,async)

method  提交方式 get 和 post

get——post 的区别

  1. get提交是以 url 的方式来提交的,post是以主体body的方式来提交的,安全性方面post更好
  2. 数据大小方面,get是有限制的,post理论上是无限制
  3. 速率方面,get方面远超post,(建议使用get)

url ——提交的目标地址,接口(网址)

async ——同步异步操作(false,true)

第三步,使用send(data) 来发送请求,如果请求方式为post的时候,要data数据

第四步,使用onreadystatechange来监听返回回来状态

readyState 请求状态

  • 0: 请求未初始化
  • 1: 服务器连接已建立
  • 2: 请求已接收
  • 3: 请求处理中
  • 4: 请求已完成,且响应已就绪

status > Ajax状态码:

  • 200: "OK"
  • 404: 未找到页面

responseText属性 返回的纯文本

responseXML属性 返回xml格式

XHR.onreadystatechange =function(){
    if(XHR.readyState==4 && XHR.status==200){
	console.log(XHR.responseText)
    }
}

还能输出{{restrictNumber}}个字符  
  • {{reply.author}}

    {{CommonUtil.formateDate(reply.ac_CommentDate).shortTime}}
  • 回复了{{Comments.author}} :