兼容的Ajax

2018-06-24 00:14:01来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

 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;

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Vue混合mixins

下一篇:js实现换肤效果