readyState
0 - (未初始化)尚未调用open()方法。
1 - (启动)已经调用open()方法,但尚未调用send()方法。
2 - (发送)send()方法执行完成,但尚未接收到响应。
3 - (接收)已经接收到部分响应数据。
4 - (完成)响应内容解析完成,可以在客户端调用了
responseText:保存服务器返回的数据(从服务器返回的数据是“字符串”)。
status:响应的HTTP 状态。
200(OK):服务器成功返回了页面
304(Not Modified):数据与服务器相同,不需要重服务器请求(直接使用缓存的数据)
400(Bad Request):语法错误导致服务器不识别
401(Unauthorized):请求需要用户认证
404(Not found):请求地址不存在
500(Internal Server Error):服务器出错或无响应
503(ServiceUnavailable):由于服务器过载或维护导致无法完成请求
//第一种
function getWheather() {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.redayState == 4) {
let res = JSON.parse(xhr.responseText)
}
};
xhr.open( "get","http://wthrcdn.etouch.cn/weather_mini?city=北京");
xhr.send(null);
}
//第二种
function getData(){
let status = [200,304];
let xhr = new XMLHttpRequest();
xhr.onload = function(){
if(status.indexOf(xhr.status>=0)){
let res = JSON.parse(xhr.responseText)
}
}
xhr.open('get','http://wthrcdn.etouch.cn/weather_mini?city=北京');
xhr.send();
}
默认是异步 xhr.open('get',url,true)
注意:setRequestHeader(key,val) 设置请求头
设置请求头必须在open方法调用后设置
利用请求头设置POST提交数据格式:
xhr.setRequestHeader(‘content-type’,”application/x-www-form-urlencoded”);
10-29
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交