Vue 关于axios无法发送‘Content-Type‘: ‘multipart/form-data‘请求的问题

编程知识 更新时间:2023-04-05 06:36:13

我这里写的是纯粹的前端解决方案
按照一般的写法

const req = (method, url, params) => {
    return axios({
        method: "POST",
        url: url,
        headers: {
            'Content-Type': 'multipart/form-data',
            Token: localStorage.logintoken
        },
        data:params,
    });
};

封装完成以后你会发现后台并不能接受到你发送的数据,这是由于你发送的是request payload 但是后台做的接受是 formdata 你当然可以让你的后台小伙伴帮你修改
但是同样你可以通过qs和URLSearchParams对象的方法来解决

let params = new URLSearchParams();
//你要传给后台的key-value对
params.append('key','value');

或者

const req = (method, url, params) => {
    return axios({
        method: "POST",
        url: url,
        headers: {
            'Content-Type': 'multipart/form-data',
            Token: localStorage.logintoken
        },
        data:qs.stringify(params, { arrayFormat: 'brackets' }),
    });
};

更多推荐

Vue 关于axios无法发送‘Content-Type‘: ‘multipart/form-data‘请求的问题

本文发布于:2023-04-05 06:36:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/66cd8e9bd4de4a287d262f204044e180.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Content   axios   Vue   Type   data

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 45310文章数
  • 14阅读数
  • 0评论数