Vue拦截器

60 阅读1分钟
import axios from 'axios'

// 请求拦截器
axios.interceptors.request.use(function (config) { 
    // console.log('请求拦截');

    const token = localStorage.getItem('token')
    config.headers.Authorization = `Bearer ${token}`
    return config;
  }, function (error) {
    //  处理请求错误
    return Promise.reject(error);
  });

//响应拦截器
axios.interceptors.response.use(function (response) {
    // 任何位于2xx范围内的状态代码都会触发此函数
    //对响应数据执行操作
    // console.log('响应拦截');  
    const {authorization} = response.headers
    authorization && localStorage.setItem('token',authorization)
    console.log(authorization,'=========');
    // console.log(response.headers,'=======')
    return response;
  }, function (error) {
    // 任何超出2xx范围的状态代码都会触发此函数
    // 处理响应错误
    return Promise.reject(error);
  });