js原生ajax请求利用promise封装函数
2018-08-01 15:51
561 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38008863/article/details/81332162
废话不多说,直接上代码。
[code] /*利用promise封装的ajax函数*/ function ajax(method,url, data){ /*兼容IE*/ var request; if(window.XMLHttpRequest){ request =new XMLHttpRequest(); }else{ request=new ActiveXObject("Microsoft.XMLHTTP") } return new Promise(function(resolve,reject){ request.onreadystatechange=function(){ if(request.readyState===4){ if(request.status===200){ resolve(JSON.parse(request.response)); }else{ reject(request.status); } } }; if(method.toUpperCase()=== "GET"){ var arr = []; for(var key in data){ arr.push(key + '=' + data[key]); } var getData=arr.join("&"); request.open("GET",url +"?"+getData,true); request.send(null); }else if(method.toUpperCase()=== "POST"){ request.open("POST",url,true); request.responseType="json"; request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8'); request.send(data); } }); }; /*使用方法*/ var obj={ access_token:'3452d32463e1b36ad94ee56931ea3cf0', pageNumber:1, pageSize:20 } var url='https://denterpriseapi.coolcollege.cn/course/queryCourseByPage' //开始调用接口 ajax('get',url,obj).then(function(data){ console.log(data) }).catch(function(err){ console.log(err) })
阅读更多
相关文章推荐
- 原生JS写Ajax的请求函数功能
- [日常记录]原生JS写Ajax的请求函数
- 原生JS写Ajax的请求函数
- 利用JS面向对象+模块化封装集AJAX请求、基本数据校验、URL参数截取等功能于一身的通用工具模块
- 原生javascript封装类似jquery的ajax请求跨域函数
- 将ajax请求封装为一个对象(原生js)
- 第110天:Ajax原生js封装函数
- 原生JS写Ajax的请求函数
- 原生JS写Ajax的请求函数
- 利用JS面向对象+模块化封装集AJAX请求、基本数据校验、URL参数截取等功能于一身的通用工具模块
- 利用原生js封装一个ajax api(一)
- 原生js封装ajax,实现跨域请求
- 原生JS封装AJAX请求
- 原生js实现对Ajax的封装(仿jquery)
- 原生js封装ajax 案例
- 原生JS 封装call apply 函数
- 封装Ajax请求,callback函数参数分析
- js封装ajax请求
- 原生js,jquery ajax请求以及jsonp的调用
- js原生ajax请求get post笔记