您的位置:首页 > 理论基础 > 计算机网络

原生封装ajax

2017-07-20 22:18 351 查看
项目开发中,在进行数据交互的时候,经常会用到ajax请求。现在用原生JS对ajax进行了封装,具体代码如下:

/*
* ajax组件
*/
module.exports = function (window, undefined) {
var UhAjax = {
ajaxFunction:function(){
var xmlHttp;
try{
// Firefox, Opera 8.0+, Safari
xmlHttp = new XMLHttpRequest();
}
catch (e){
try{
// Internet Explorer
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e){
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
return xmlHttp;
},
ajax:function(ajaxUrl, method, data, callback){
var xmlHttp = UhAjax.ajaxFunction();
xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status==200||xmlHttp.status==304){
callback(JSON.parse(xmlHttp.responseText));
}
}
}
//打开连接
xmlHttp.open(method,ajaxUrl,true);
//设置响应头
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//发送请求
xmlHttp.send("data=" + data);
}
};
window.UhAjax = UhAjax;
return UhAjax;
}(window);
用法如下:

var ajaxUrl = "xxx";
UhAjax.ajax(ajaxUrl, 'get', null, function(data){
console.log(data);
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ajax 原生 xmlhttprequest