http.js 729 Bytes
import axios from 'axios'
import router from './router'

// 请求拦截器
axios.interceptors.request.use(
  config => {
    // 发送请求前
    return config;
  },
  error => {
    // 请求错误处理
    return Promise.reject(error);
  })

// 响应拦截器
axios.interceptors.response.use(
    response => {
      return response;
    },
    error => {
      if (error.response) {
        switch (error.response.status) {
        case 401:
          router.replace({
            path: '/login'
          })
          break;
        case 404:
          router.replace({
            path: '/'
          })
          break;
        }
      }
      return Promise.reject(error.response.data);
    })

export default axios;