非战斗单位 2020-11-03 10:16 采纳率: 0%
浏览 154
已采纳

有关vue的axios拦截器发送请求时的数据处理问题

我在vue里设置了axios拦截器,request提交的数据为json给后端,现在我想提交带有图片的formdata,请问有办法避开拦截器发送到后端吗。

//http request 拦截器
service.interceptors.request.use(
    config => {
        showLoading()
        const token = store.getters['user/token']
        const user = store.getters['user/userInfo']
        config.data = JSON.stringify(config.data);
        config.headers = {
            'Content-Type': 'application/json',
            'x-token': token,
            'x-user-id':user.ID
        }
        return config;
    },

这是前端的发送数据请求,uploadUserImage为api接口。

httpRequest(params){
        let objData = {};
        let fd = new FormData();
        fd.append("file", params.file);
        fd.append("FileName", params.file.name)
        fd.forEach((value, key) => objData[key] = value);
        console.log(params)
        console.log(JSON.stringify(objData))
        uploadUserImage(fd).then(res =>{
          console.log(res)
        })
        .catch(err => {
          console.log(err)
        })
      },
  • 写回答

2条回答 默认 最新

  • 一个养猪户 2020-11-03 13:18
    关注

    重新定义axios上传图片 区分数据上传的方法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?