JSAJAX请求

let xmlHttp = new XMLHttpRequest();//创建发送请求的对象

    //这是为了兼容IE的获取ajac请求对象的方法     // let getXmlHttpRequest = function () {     //     if (window.XMLHttpRequest) {     //         //主流浏览器提供了XMLHttpRequest对象     //         return new XMLHttpRequest();     //     }     //     else if (window.ActiveXObject) {     //         //低版本的IE浏览器没有提供XMLHttpRequest对象     //         //所以必须使用IE浏览器的特定实现ActiveXObject     //         return new ActiveXObject("Microsoft.XMLHTTP");     //     }     // };

    xmlHttp.open(‘GET‘,‘https://www.baidu.com‘);//设置请求的地址和方法     xmlHttp.send();//发送请求

    //xmlHttp请求的状态有五种0,1,2,3,4。所以这个状态改变的回调函数会执行四次,即0变为1、1变为2、2变为3、3变为4     //当var xmlHttp = new XMLHttpRequest();这句执行完后,xmlHttp.readyState为0,表示对象存在     //调用open方法根据参数完成对象设置,并调用send方法发送请求,这时候xmlHttp.readyState为1,表示正在向服务端发送请求     //当send方法执行完成后,接收完全部的返回数据,xmlHttp.readyState为2     //接收完数据后进行解析,根据服务器端响应头部返回的MIME类型把数据转换成能通过responseBody、responseText或responseXML属性存取的格式,这时候xmlHttp.readyState为3     //响应内容解析完成,可以在客户端调用了,xmlHttp.readyState为4     xmlHttp.onreadystatechange=()=>{//当请求的状态发生改变的时候调用回调函数         //我们只看请求完成后的情况,因为就算请求失败了,它最终的状态也会变为4,比如请求一个不存在的网页         if(xmlHttp.readyState==4){             console.log(‘请求流程执行完了...‘);             //console.log(xmlHttp.status);             //请求的过程走完之后我们还需要通过判断请求的状态码xmlHttp.status来看请求是否成功,常用的状态码和含义             //200:请求成功(后台处理结果ok)、303:重定向             //400:请求错误、401:未授权、403:禁止访问、404:文件未找到             //500:服务器错误             if(xmlHttp.status==200){                 let response = xmlHttp.responseText;//获取响应的内容,以文本的方式                 console.log(‘请求成功‘);             }else{                 console.log(`请求失败:${xmlHttp.status}`);             }         }     };

相关文章