SpringBoot同时接收文件以及json参数实现方式
更新时间:2026年01月09日 09:23:06 作者:她又在丛中笑
文章介绍了在前端传递参数给后端时,如果需要同时接收文件和JSON参数,应该使用`@RequestPart`注解,后端和前端需要约定好文件和JSON参数的对应名称,通常是`files`和`saveDto`,前端在发送请求时需要注意设置正确的请求头信息
前端传参
let upData = new FormData();
// 将文件列表赋值给files参数
this.files.forEach(function (file) {
upData.append("files", file);
});
this.firmwareSaveDto = this.formData;
let commodityDto = JSON.stringify(this.firmwareSaveDto);
// 将json对象赋值给saveDto参数
upData.append(
"saveDto",
new Blob([commodityDto], { type: "application/json" })
);
// 发送请求,注意请求头信息
axios.post('/v1/test/upload_files', upData, {
headers: {
'Content-Type': 'multipart/form-data'
}
})
后端接收
/**
* 上传文件
* @param files
* @param saveDto
* @return
*/
@PostMapping(value = "/upload_files",name = "上传文件")
public ExecuteResult uploadFiles(
@RequestPart("files") MultipartFile[] files,
@RequestPart("saveDto") @Valid SaveDtosaveDto){
// 逻辑代码。。。。。。
}
注意
- 后端【同时接收文件以及json参数】时使用
@RequestPart注解。 - 后端与前段要约定好文件与json的对应参数名
files、saveDto。 - 前端要注意 请求头信息
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot中整合Ehcache实现热点数据缓存的详细过程
这篇文章主要介绍了SpringBoot中整合Ehcache实现热点数据缓存,SpringBoot 中使用 Ehcache 比较简单,只需要简单配置,说白了还是 Spring Cache 的用法,合理使用缓存机制,可以很好地提高项目的响应速度,需要的朋友可以参考下2023-04-04
spring,mybatis事务管理配置与@Transactional注解使用详解
这篇文章主要介绍了spring,mybatis事务管理配置与@Transactional注解使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07
Java中BigDecimal的equals方法和compareTo方法的区别详析
这篇文章主要给大家介绍了关于Java中BigDecimal的equals方法和compareTo方法区别的相关资料,对于BigDecimal的大小比较,用equals方法的话会不仅会比较值的大小,还会比较两个对象的精确度,而compareTo方法则不会比较精确度,只比较数值的大小,需要的朋友可以参考下2023-11-11
jackson 实现null转0 以及0转null的示例代码
这篇文章主要介绍了jackson 实现null转0 以及0转null的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-09-09


最新评论