Vue中axios拦截器,传token给后端

创建一个js文件,名称自己定,如service.js

import axios from "axios";  // 引入axios
// 自定义一个axios实例
const service = axios.create(
      baseURL: "10.xx.xx.x",  // 后端接口ip
      timeout: "1000",  //  请求时间限制,超过时间请求会被中断
      headers: {'Content-Type': 'application/x-www-form-urlencoded'} // 请求头
)

// 请求拦截器
service.interceptors.request.use(
        config => {
                const token = "xxx";  // 在vuex里面保存的token
                if(token) {
                  // 存在token时则在请求头headers里加入token
                  // X-Token为自定义字段,根据后端的规定来定义
                  config.headers["X-Token"] = token
                }
                return config;
        }, error => {
                return Promise.reject(error);
        }
)

//    响应拦截器
service.interceptors.response.use(
      response => {
                console.log(response, 'response')
                if(response.data.code === 200){}
                return response;
         }, error => {
      return Promise.reject(error);
    }
)

export default service;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容