ajax封装

Get方法封装
1.普通封装

function ajaxGet(url,callback){
		var xhr = new XMLHttpRequest();
		xhr.open('GET',url);
		xhr.send(null);
		xhr.onload = function(){
		    if(xhr.status==200){
		    	callback(xhr.response);
			}
		}
}

调用:

 ajaxGet('请求路径',function(res){
		console.log(res);
   })

2.结合promise封装

function ajaxGet(url){
	return new Promise(function(success,failed){
		var xhr = new XMLHttpRequest();
		xhr.open('GET',url);
		xhr.send(null);
		xhr.onload = function(){
			if(xhr.status == 200){
				success(xhr.response);
			}
		}
	})
}

调用:

ajaxGet("请求路径")
         .then(function(res){
            console.log(res);
            console.log(JSON.parse(res));
            return ajaxGet("请求路径");
        })
         .then(function(res){
            console.log(res);
        })  

Post方法封装
1.普通方法封装

function ajaxPost(url,data,callback){
		var xhr = new XMLHttpRequest();
    xhr.open('POST',url);
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=utf-8');
		xhr.send(data);
		xhr.onload = function(){
		    if(xhr.status==200){
		    	callback(xhr.response);
			}
		}
}

调用:

ajaxPost('请求路径',data,function(res){
    		console.log(res);
       })

2.结合promise封装

  function ajaxPost(url,data){
         return new Promise(function(success){
			var xhr = new XMLHttpRequest();
			xhr.open('POST',url);
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=utf-8');
			xhr.send(data);
			xhr.onload = function(){
				if(xhr.status == 200){
					success(xhr.response);
				}	
			}
		 })  
        }

调用:

ajaxPost("请求路径",data)
  .then(function(res){
    console.log(res);
    console.log(JSON.parse(res));
    return ajaxPost("请求路径",data);
})
  .then(function(res){
    console.log(res);
}) 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值