前言:最近做项目
一、index文件
封装了两套,一套返回json,一套返回form
基础的一些封装get,post,put,delete一些方法,如果有额外需求,可以自定义添加
/* eslint-disable */
// import router from 'src/router'
import axios from 'axios';
import Qs from 'qs';
import userInterceptor from './userInterceptors';
// form 请求
const instanceForm = axios.create({
baseURL: '',
timeout: 100000,
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8',
},
withCredentials: true,
transformRequest: [
data => {
let dataIn = data;
dataIn = Qs.stringify(dataIn);
return dataIn;
},
],
});
// json
const instance = axios.create({
baseURL: '',
timeout: 100000,
headers: {
'Content-Type': 'application/json;charset=utf-8',
},
withCredentials: true,
transformRequest: [data => JSON.stringify(data)],
});
// 全局 axios原型加入 拦截
userInterceptor([instance, instanceForm, axios]);
export {
instanceForm };
// 对 get set 做一层封装 比较常用的事 get set 如果其他用得上的再自行封装
export function Get(url, data) {
return instance.get(url, {
params: data,
});
}
export function Post(url, data) {
return instance.post(url, data);
}
export function Put(url, data)