1 /** 2 * 创建XMLHttpRequest对象 3 * @param _method 请求方式: post||get 4 * @param _url 远程服务器地址 5 * @param _async 是否异步 6 * @param _parameter 向服务器发送数据 7 * @param _callBack 回调函数 8 */ 9 function parameterDeal(_parameter){ 10 var _sender=""; 11 if(_parameter instanceof Object){ 12 for(var k in _parameter){ 13 _sender+=k+"="+_parameter[k]+"&"; 14 } 15 return _sender.replace(/&$/g,""); 16 }else{ 17 return _parameter; 18 } 19 } 20 function createXMLHttpRequest(){ 21 try{ 22 return new window.XMLHttpRequest(); 23 }catch(e){ 24 try{ 25 return new ActiveXObject("MSXML2.XMLHTTP.6.0"); 26 }catch(e){ 27 try{ 28 return new ActiveXObject("MSXML2.XMLHTTP.3.0"); 29 }catch(e){ 30 try{ 31 return new ActiveXObject("MSXML2.XMLHTTP"); 32 }catch(e){ 33 try{ 34 return new ActiveXObject("Microsoft.XMLHTTP"); 35 }catch(e){ 36 throw new Error("该浏览器版本太低,已经被大部分市场淘汰,请升级!!!"); 37 return; 38 } 39 } 40 } 41 } 42 } 43 } 44 45 import Host from './Host.js';//域名的全局变量 46 47 var Ajax=function(_method,_url,_async,_parameter,_callBack){ 48 _url=Host+_url; 49 var _ajax=createXMLHttpRequest(); 50 if(_ajax){ 51 _ajax.open(_method,_url,_async); 52 _ajax.onreadystatechange=function(){ 53 if(_ajax.readyState==4 && _ajax.status==200){ 54 _callBack(_ajax.responseText); 55 } 56 } 57 _ajax.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=utf-8"); 58 try { 59 _ajax.send(parameterDeal(_parameter)); 60 } catch (e) { 61 console.log(e); 62 } finally { 63 64 } 65 } 66 } 67 68 export default Ajax;
如果觉得文章不错,可以给小编发个红包给予鼓励.