1.1原生的ajax分为4个步骤:
a、创建ajax对象
var ajax = new XMLHttpRequest();
b、建立连接
type: 可以是get、post等等
ajax.open('get',"04.txt",true);
c、发送数据
ajax.send(data);
如果是get请求,没有参数
如果是post请求,参数就是post请求要发给服务器的数据
d、事件监听
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 && ajax.status == 200) {
// console.log( ajax.response)
}
}
1.2 对原生的ajax进行封装
function myajax(type,url,data,succ,fail){
var ajax = new XMLHttpRequest();
// ajax.open(type,url,true);
if (type.toLowerCase() == 'get'){
if (data){
console.log('has data');
ajax.open(type,url+"?"+data,true);
ajax.send();
} else {
console.log('no data');
ajax.open(type,url,true);
ajax.send();
}
}
if (type.toLowerCase() == "post"){
if (data){
ajax.open(type,url,true);
ajax.send(data);
} else {
ajax.open(type,url,true);
ajax.send();
}
}
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 && ajax.status == 200){
succ(ajax.response);
} else {
fail && fail();
}
}
}
1.3 采用封装的ajax进行数据请求
myajax('post','https://httpbin.org/post','{name:"zs",age:18}',function(data){
console.log(data);
})