1.get不需要设置
2.post需要设置请求头:Content-Type:application/x-www-form-urlencoded
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");.
如果没有设置,参数无法正确的传递到服务器(本质上说,如果没有参数,也不一定需要设置,不会影响请求的发送)
4、 设置请求体 send()
1.get的参数在url拼接了,所以不需要在这个函数中设置
2.post的参数在这个函数中设置(如果有参数)
xhr.send("username="+name);
5、让异步对象接收服务器的响应数据
一个成功的响应有两个条件:1.服务器成功响应了 2.异步对象的响应状态为4(数据解析完毕可以使用了)
当异步对象的响应状态发生改变的时候,会触发一个事件:onreadystatechange
xhr.onreadystatechange = function(){
判断服务器是否响应 判断异步对象的响应状态
if(xhr.status == 200 && xhr.readyState == 4){
//当返回的是xml格式的数据时: console.log(responseXML)
//当返回的是其他格式的数据时:console.log(responseText)
}