700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > spring-boot 接收form表单 多文件加多字段数据(postman在form-data格式下传数组和集合)

spring-boot 接收form表单 多文件加多字段数据(postman在form-data格式下传数组和集合)

时间:2020-10-11 02:26:21

相关推荐

spring-boot 接收form表单 多文件加多字段数据(postman在form-data格式下传数组和集合)

前言

该博客多用于记录自己的问题

在写项目的时候遇到这种业务情况:

需要保存整个页面的数据,数据包含多个字段信息多个文件

结合网上的处理思路,我最终实现了这种业务需求并整理一下

前端单独提交字段和文件比较方便简单,本人不太了解前端,既然前端说要用form表单同时传字段和文件,那么我就以这样的方式去研究怎么去同时接收

先看一下最终结果

其中遇到的一下问题

1.前端的数据格式是 multipart/form-data,不再是json格式,后端接收就不能加注解@RequestBody

如:

会报错,不支持这个方式

"msg": "Content type 'multipart/form-data;boundary=--------------------------958211735005905900137890;charset=UTF-8' not supported",

2. 所以前端就不能以对象的方式传数据,我不了解是否有其他解决方法,目前我的前端就是以键值对的方式给我数据,以postman为例

数据格式form-data,其中files是文件,其余是一个对象的字段,需求是多个文件,所以是以数组的方式接收

注意的是用postmanform-data格式传数组 按上图所示即可

3.同理,前端用form表单传文件数组时也遇到了问题,开始是将文件放入了名叫files数组一起传,但是后台接收不到,我猜测是没按键值对方式的原因,

最终解决是,文件名"name"为files,value值为不同的文件,如同postman的格式

4.其中,我的业务需求里,在对象中包含集合,看网上一些人说在上面这个传输格式下,不用注解@RequestBody,不会将集合自动装配到对象中,我用postman实验了一下,可以自动装配到对象中

需要注意的是:如何在form-data格式下传集合

如:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。