码迷,mamicode.com
首页 > 移动开发 > 详细

axios 的二次封装及使用

时间:2021-04-22 15:33:35      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:let   cal   encode   else   for   必须   header   out   form   

 1 // 将axios再次封装
 2 import axios from ‘axios‘;  // npm i -S axios
 3 
 4 import Qs from ‘qs‘  // npm i -S qs
 5 
 6 // 提示组件   mint-ui 中的提示组件
 7 
 8 axios.defaults.withCredentials = true;  // false 不跨域  true 跨域
 9 axios.defaults.headers.common["token"] = localStorage.getItem(‘token‘);  // 这是设置请求头  不是必须的
10 
11 export default function(path, params, method = "GET", headerType = "json") {
12     let baseURL = "/api";
13     let data = {};   // 将参数解析出来进行放置的地方
14     // 设置请求头
15     if(method == "post") {
16         if(headerType == "json") {
17             axios.defaults.headers.post["Content-Type"] = 
18                 "application/json;charset=utf-8";
19             data = params;   
20         } else if(headerType == "multipart") {
21             axios.defaults.headers.post["Content-Type"] = 
22                 "multipart/form-data";
23         } else {
24             axios.defaults.headers.post["Content-Type"] = 
25                 "application/x-www-form-urlencoded";
26             data = Qs.stringify(params);
27         }
28     }
29     if(method == "get") {
30         if(headerType == !"json") {
31             axios.defaults.headers["Content-Type"] = 
32                 "application/x-www-form-urlencoded;charset=utf-8";
33         }
34         data = Qs.stringify(params);
35         path = path + "?" + data;
36         data = {};
37     }
38     return new Promise( (resolve, reject) => {
39         axios({
40             baseURL,
41             method,
42             url: path,
43             data,
44             timeout: 6000
45         })
46         .then( res => {
47             resolve(res.data.result);
48         })
49         .catch( err => {
50             reject(err);
51         })
52     })
53 }   

axios 的二次封装及使用

标签:let   cal   encode   else   for   必须   header   out   form   

原文地址:https://www.cnblogs.com/anqiphp/p/14684090.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!