手写ajax请求

11,手写ajax请求

ajax指的是通过js的异步通信,从服务器获取xml文档从中提取数据,再更新网页的对应部分,而不用去刷新整个网页。

创建ajax请求的步骤:

创建一个XMLRequest对象。

在这个对象上使用open方法创建一个http请求,open方法所需要的参数是请求的方法,请求的路径,是否异步和用户的认证信息。

在发起请求之前,可以为这个对象添加一些信息和监听函数,比如通过setRequestHeader方法来为请求添加头信息,还可以为这个额对象添加一个状态监听函数。

一个XMLHttpRequest对象一共有5个状态,当她的状态变化时,会触发onreadystatechange时间,可以通过设置监听函数,来处理请求成功之后的结果,当对象readyState变成4的是偶,代表服务器返回的数据接收完成,这个时候,可以通过判断请求的状态,如果状态时2**或者是304的话就代表返回正常,这个时候就可以通过response中的数据对页面进行更新。

当对象的属性和监听函数设置完成之后,最后调用sent方法来向服务器发送请求,可以传入参数作为发送的数据体。

<script>
          function ajaxText(url) {
               // 1,创建对象
               let xhr = new XMLHttpRequest();
               // 2,创建http请求
               xhr.open('GET',url,true)
               // 3,设置状态监听函数
               xhr.onreadystatechange = function(){
                    if(this.readyState !== 4) return
                    if(this.status === 200){
                         handle(this.response)
                    }else{
                         console.error(this.statusText)
                    }
               }
               // 设置请求失败时的监听函数
               xhr.onerror = function(){
                    console.error(this.statusText);
               }
               // 设置请求头信息
               xhr.responseType = 'json'
               xhr.setRequestHeader('Accept','application/json')
               // 发送请求
               xhr.send()
          }  
     </script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值