Javascript 之 Ajax

XMLHttpRequest 对象

var xhr = new XMLHttpRequest();
xhr.open('GET', '/api', false);  // 打开请求,false 表示要使用同步,默认 true 为异步
xhr.onreadystatechange = function () {  // 每次 readyState 状态码变化,都会触发 onreadystatechange 事件
  if (xhr.readyState == 4) {  // 如果状态码等于4,说明请求完成
    if (xhr.status == 200) {  // 服务端返回的状态码
      alert(xhr.responseText);  // 服务端返回的内容
    }
  }
}
xhr.send(null);  // 发送

readyState 状态码说明

0  (未初始化)还没有调用 send() 方法
1  (载入)已调用 send() 方法,正在发送请求
2  (载入完成) send() 方法执行完成,已经接收到全部响应内容
3  (交互)正在解析响应内容
4  (完成)响应内容解析完成,可以在客户端调用了

status 状态码说明

2xx  表示成功处理请求,如:200
3xx  需要重定向,浏览器直接跳转
4xx  客户端请求错误,如:404
5xx  服务端错误
原文地址:https://www.cnblogs.com/joffe/p/7677171.html