Request Interceptor und Response Interceptor

import axios from 'axios'
import { Loading } from 'element-ui'
const request = axios.create({
  baseURL: process.env.VUE_APP_BASEURL,
  timeout: 6000
})
let loding = {}
request.interceptors.request.use(
  config => { // 请求成功时执行
    // 获取本地存储中的token
    loding = Loading.service({
      lock: true,
      text: '加载中……'
    })
    const token = localStorage.getItem('token')
    token && (config.headers.Authorization = token)
    return config
  },
  error => { // 请求失败时执行
    return Promise.reject(error)
  }
)

request.interceptors.response.use(
  response => {
    loding.close()
    return response.data
  }, error => { // 拦截失败
    loding.close()
    return Promise.reject(error)
  }
)
// 导出request的实例
export default request

Guess you like

Origin blog.csdn.net/m0_50013284/article/details/126973127