| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- import axios from 'axios';
- import store from '@/store';
- import { Message } from 'element-ui';
- import { getToken } from '@/utils/auth';
- axios.defaults.headers['cache-control'] = 'no-cache';
- axios.defaults.headers['Content-Type'] = 'application/json';
- axios.defaults.headers['X-Requested-With'] = 'XMLHttpRequest';
- const service = axios.create({
- baseURL: process.env.VUE_APP_BASE_API,
- timeout: 30000
- });
- // 请求拦截器
- service.interceptors.request.use(
- (config) => {
- config.headers['Content-Type'] = 'application/json';
- return config;
- },
- (error) => {
- return Promise.reject(error);
- }
- );
- // 响应拦截器
- service.interceptors.response.use(
- (response) => {
- const res = response.data;
- if (res.code === 404) {
- Message({
- message: '请求的资源不存在',
- type: 'error',
- duration: 3 * 1000
- });
- return Promise.reject(new Error(res.message || 'Error'));
- }
- // 返回数据失败
- if (res.status === 0) {
- Message({
- message: res.error,
- type: 'error',
- duration: 3 * 1000
- });
- return Promise.reject(new Error(`${response.config?.params?.MethodName} ${res.error}` || 'Error'));
- }
- // 无效的操作用户
- if (res.status === -1) {
- Message({
- message: res.error,
- type: 'error',
- duration: 3 * 1000
- });
- store.dispatch('user/resetSessionID').then(() => {
- window.location.href = '/';
- });
- return Promise.reject(new Error(res.error || 'Error'));
- }
- return res;
- },
- (error) => {
- if (error.code === 'ERR_CANCELED') {
- return Message.success('取消上传成功');
- }
- Message({
- message: error.message,
- type: 'error',
- duration: 3 * 1000
- });
- return Promise.reject(error);
- }
- );
- /**
- * 得到必需的请求参数
- * @param {String} MethodName 请求方法名
- * @returns {Object} 返回必需的请求参数
- * */
- export function getRequestParams(MethodName) {
- const { token, isHas } = getToken();
- return {
- MethodName,
- UserCode: isHas ? token.user_code : '',
- UserType: isHas ? token.user_type : '',
- SessionID: isHas ? token.session_id : ''
- };
- }
- export { service as request };
|