原生ajax的请求过程

原生ajax的请求过程

创建全平台兼容的XMLHttpRequest对象:

function getXHR(){  var xhr = null;  if(window.XMLHttpRequest) {// 兼容 IE7+, Firefox, Chrome, Opera, Safari
    xhr = new XMLHttpRequest();
  } else if (window.ActiveXObject) {    try {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");// 即MSXML3
    } catch (e) {      try {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");// // 兼容 IE6, IE5,很老的api,虽然浏览器支持,功能可能不完善,故不建议使用
      } catch (e) {
        alert("您的浏览器暂不支持Ajax!");
      }
    }
  }  return xhr;
}

  

Ajax请求数据的过程:

var xhr = getXHR();
xhr.open('GET', url/file,true);  //设置请求方式,url,以及是否异步xhr.onreadystatechange = function() {   //设置回调监听函数
   if(xhr.readyState==4){        if(xhr.status==200){            var data=xhr.responseText;             console.log(data);
   }
};
xhr.onerror = function() {  console.log("Oh, error");
};
xhr.send();  //发送请求

  

 

posted @ 2019-01-10 23:10  Mahmud(مەھمۇد)  阅读(180)  评论(0编辑  收藏  举报