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 服务端错误