You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
358 lines
12 KiB
358 lines
12 KiB
4 years ago
|
import axios from 'axios';
|
||
|
import QS from 'qs';
|
||
|
// import store from '../store/index'
|
||
|
import { Message } from 'element-ui'
|
||
|
import router from '../router/index'
|
||
|
|
||
|
// 环境的切换
|
||
|
// if (process.env.NODE_ENV == 'development') {
|
||
|
// axios.defaults.baseURL = '/api';
|
||
|
// } else if (process.env.NODE_ENV == 'debug') {
|
||
|
// axios.defaults.baseURL = '';
|
||
|
// } else if (process.env.NODE_ENV == 'production') {
|
||
|
// axios.defaults.baseURL = 'http://api.123dailu.com/';
|
||
|
// }
|
||
|
|
||
|
// 请求超时时间
|
||
|
axios.defaults.timeout = 30000;
|
||
|
|
||
|
// post请求头
|
||
|
axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';
|
||
|
|
||
|
// 请求拦截器
|
||
|
// axios.interceptors.request.use(config => {
|
||
|
// if (sessionStorage.getItem('token')) {
|
||
|
// // 存在将token写入 request header
|
||
|
// config.headers.Authorization = `${sessionStorage.getItem('token')}`;
|
||
|
// }
|
||
|
// return config;
|
||
|
// }, err => {
|
||
|
// Message.error({
|
||
|
// message: '退出登陆',
|
||
|
// onClose: function () {
|
||
|
// router.push({name: 'login'});
|
||
|
// }
|
||
|
// })
|
||
|
// return Promise.reject(err);
|
||
|
// })
|
||
|
|
||
|
// 响应拦截器
|
||
|
// axios.interceptors.response.use(
|
||
|
// response => {
|
||
|
// consol.log(response.status)
|
||
|
// if (response.status === 200) {
|
||
|
// return Promise.resolve(response);
|
||
|
// } else {
|
||
|
// return Promise.reject(response);
|
||
|
// }
|
||
|
// },
|
||
|
// // 服务器状态码不是200的情况
|
||
|
// error => {
|
||
|
// if (error.response.status) {
|
||
|
// switch (error.response.status) {
|
||
|
// // 401: 未登录
|
||
|
// // 未登录则跳转登录页面,并携带当前页面的路径
|
||
|
// // 在登录成功后返回当前页面,这一步需要在登录页操作。
|
||
|
// case 500:
|
||
|
// router.replace({
|
||
|
// path: '/login',
|
||
|
// // query: { redirect: router.currentRoute.fullPath }
|
||
|
// });
|
||
|
// break;
|
||
|
// // 403 token过期
|
||
|
// // 登录过期对用户进行提示
|
||
|
// // 清除本地token和清空vuex中token对象
|
||
|
// // 跳转登录页面
|
||
|
// case 403:
|
||
|
// // Toast({
|
||
|
// // message: '登录过期,请重新登录',
|
||
|
// // duration: 1000,
|
||
|
// // forbidClick: true
|
||
|
// // });
|
||
|
// // 清除token
|
||
|
// sessionStorage.removeItem('token');
|
||
|
// store.commit('loginSuccess', null);
|
||
|
// // 跳转登录页面,并将要浏览的页面fullPath传过去,登录成功后跳转需要访问的页面
|
||
|
// setTimeout(() => {
|
||
|
// router.replace({
|
||
|
// path: '/login',
|
||
|
// query: {
|
||
|
// redirect: router.currentRoute.fullPath
|
||
|
// }
|
||
|
// });
|
||
|
// }, 1000);
|
||
|
// break;
|
||
|
// // 404请求不存在
|
||
|
// case 404:
|
||
|
// router.replace({
|
||
|
// path: '/404',
|
||
|
// });
|
||
|
// break;
|
||
|
// // 其他错误,直接抛出错误提示
|
||
|
// default:
|
||
|
// router.replace({
|
||
|
// path: '/500',
|
||
|
// });
|
||
|
// }
|
||
|
// return Promise.reject(error.response);
|
||
|
// }
|
||
|
// }
|
||
|
// );
|
||
|
|
||
|
/**
|
||
|
* get方法,对应get请求
|
||
|
*/
|
||
|
export function get(url, params){
|
||
|
return new Promise((resolve, reject) =>{
|
||
|
axios.get(url, {
|
||
|
params: params
|
||
|
})
|
||
|
.then(res => {
|
||
|
if (res.data.status) {
|
||
|
switch (res.data.status) {
|
||
|
case 200:
|
||
|
resolve(res.data);
|
||
|
break;
|
||
|
case 10000:
|
||
|
resolve(res.data);
|
||
|
break;
|
||
|
case 500:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 300:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 404:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 403:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 401:
|
||
|
Message.error("token失效,请重新登录");
|
||
|
sessionStorage.removeItem('token');
|
||
|
router.replace('/login')
|
||
|
break;
|
||
|
case 405:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 406:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
})
|
||
|
.catch(err => {
|
||
|
reject(err.data)
|
||
|
this.$message({
|
||
|
showClose: true,
|
||
|
message: '请求失败,请刷新页面重新进行请求',
|
||
|
type: 'error'
|
||
|
});
|
||
|
})
|
||
|
});
|
||
|
}
|
||
|
/**
|
||
|
* post方法,对应post请求
|
||
|
*/
|
||
|
export function post(url, params) {
|
||
|
return new Promise((resolve, reject) => {
|
||
|
axios.post(url,params)
|
||
|
.then(res => {
|
||
|
if (res.data.status) {
|
||
|
switch (res.data.status) {
|
||
|
case 200:
|
||
|
resolve(res.data);
|
||
|
break;
|
||
|
case 500:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 300:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 404:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 403:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 401:
|
||
|
Message.error("token失效,请重新登录");
|
||
|
sessionStorage.removeItem('token');
|
||
|
router.replace('/login')
|
||
|
break;
|
||
|
case 405:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 406:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
})
|
||
|
.catch(err => {
|
||
|
reject(err.data)
|
||
|
this.$message({
|
||
|
showClose: true,
|
||
|
message: '请求失败,请刷新页面重新进行请求',
|
||
|
type: 'error'
|
||
|
});
|
||
|
})
|
||
|
});
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* delete方法,对应delete请求
|
||
|
*/
|
||
|
export function del(url, params){
|
||
|
return new Promise((resolve, reject) =>{
|
||
|
axios.delete(url, {
|
||
|
params: params
|
||
|
})
|
||
|
.then(res => {
|
||
|
if (res.data.status) {
|
||
|
switch (res.data.status) {
|
||
|
case 200:
|
||
|
resolve(res.data);
|
||
|
break;
|
||
|
// case 300:
|
||
|
// this.$message.error(
|
||
|
// res.data.errmessage
|
||
|
// );
|
||
|
// break;
|
||
|
case 500:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 404:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
router.replace({
|
||
|
path: '/404',
|
||
|
});
|
||
|
break;
|
||
|
case 403:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 401:
|
||
|
Message.error("token失效,请重新登录");
|
||
|
sessionStorage.removeItem('token');
|
||
|
router.replace('/login')
|
||
|
break;
|
||
|
case 405:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 406:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
})
|
||
|
.catch(err => {
|
||
|
reject(err.data)
|
||
|
this.$message({
|
||
|
showClose: true,
|
||
|
message: '请求失败,请刷新页面重新进行请求',
|
||
|
type: 'error'
|
||
|
});
|
||
|
})
|
||
|
});
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* put修改
|
||
|
* @param {} url
|
||
|
* @param {*} params
|
||
|
*/
|
||
|
export function put(url, params){
|
||
|
return new Promise((resolve, reject) =>{
|
||
|
axios.put(url, params)
|
||
|
.then(res => {
|
||
|
if (res.data.status) {
|
||
|
switch (res.data.status) {
|
||
|
case 200:
|
||
|
resolve(res.data);
|
||
|
break;
|
||
|
case 300:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 500:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 404:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 403:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 401:
|
||
|
Message.error("token失效,请重新登录");
|
||
|
sessionStorage.removeItem('token');
|
||
|
router.replace('/login')
|
||
|
break;
|
||
|
case 405:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
case 406:
|
||
|
this.$message.error(
|
||
|
res.data.errmessage
|
||
|
);
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
})
|
||
|
.catch(err => {
|
||
|
reject(err.data)
|
||
|
this.$message({
|
||
|
showClose: true,
|
||
|
message: '请求失败,请刷新页面重新进行请求',
|
||
|
type: 'error'
|
||
|
});
|
||
|
})
|
||
|
});
|
||
|
}
|