『手写系列』 AJAX

34 阅读1分钟

1、利用 AJAX 发送请求主要包括以下四步

  • 创建 XMLHTTPRequest 实例。
  • 调用 open 方法,公开请求的类型、URL 和是否异步请求。
  • 调用 send 方法,将请求发送到服务器。

image.png

  • 声明 onreadyStateChange 事件的回调函数:当请求被发送到服务器时,我们需要执行一些基于响应的任务。当 readyState 改变时,就会触发 onreadyStateChange 事件。而且,一般来说,该回调函数会在请求被发送前被声明

image.png

2、手写代码

const ajax = (method,url,data,success,fail) => {
  let request = new XMLHTTPRequest()
  request.open(method,url,true) 
  request.onreadyStateChange = function() {
    if(request.readyState === 4){
      if(request.state >= 200 && request.state <= 299 || request.state === 304){
        success(request)
      }esle{
        fail(request)
      }
    }
  }
  request.send(data)
}