原生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(); //发送请求