// 创建一个 AJAX 对象 (IE6 不支持)
var xhr = new XMLHttpRequest();
// 发送前的配置:请求方式、请求服务器地址、同步(false)/ 异步(true 默认)
xhr.open("get","/data.txt",true);
// 监听事件,状态的改变执行
xhr.onreadystatechange = function(){
if(xhr.readyState === 4 && /^2\d{2}$/.test(xhr.status)){
var value = xhr.responseText;
}
}
// 发送请求:参数是请求主体中传递给服务器的内容
xhr.send(null);
xhr.readyState:
0 -> 请求还未发送(unset)
1 -> URL 地址已经打开(opened)
2 -> 响应头信息已接收(headers_received)
3 -> 主体内容正在服务器端处理(loading)
4 -> 响应主体的内容已经成功返回到客户端(done)
xhr.status: HTTP 网络状态码,描述了服务器响应内容的状态
2XX: 响应主体的内容已经成功
301:永久重定向
302:临时重定向 服务器的负载均衡
304:内容未改变,本次获取的内容是读取缓存中的数据
400:客户端传给服务器端的参数错误
401:无访问权限
404:客户端访问的资源不存在
500:未知的服务器错误
503:服务器超负荷
网友评论