axios发送表单数据的post请求

axiosPOSTrequest正在点击控制器上的url,但将null值设置为我的POJO类,当我在chrome中浏览开发工具时,有效负载包含数据。我做错了什么

Axios POST请求:

变量体={
用户名:“Fred”,
用户电子邮件:'[email protected]'
}
axios({
方法:“post”,
url:“/addUser”,
资料来源:body
})
.然后(功能(响应){
控制台日志(响应);
})
.catch(函数(错误){
console.log(错误);
});

浏览器响应:

如果我将标题设置为:

标题:{
内容类型:“多部分/表单数据”
}

请求抛出错误

过帐多部分/表单数据时出错。内容类型标头缺少边界

如果我在postman中发出相同的请求,它工作正常,并为我的POJO类设置值

谁能解释一下如何设置边界,或者如何使用axios发送表单数据

您可以使用FormData()发布axios数据,如:

var bodyFormData=new FormData();

然后将字段添加到要发送的表单中:

bodyFormData.append('userName','Fred');

如果您正在上载图像,可能需要使用.append

bodyFormData.append('image',imageFile);

然后您可以使用axios post方法(您可以相应地修改它)

axios({
方法:“发布”;,
url:“myurl”;,
数据:bodyFormData,
标题:{“内容类型”:“多部分/表单数据”},
})
.然后(功能(响应){
//成功
控制台日志(响应);
})
.catch(函数(响应){
//处理错误
控制台日志(响应);
});

相关GitHub问题:

无法获取具有“内容类型”的.post:“多部分/表单数据”以在@axios/axios下工作

发表评论