当前位置: 首页 > article >正文

SpringBoot 如何同时接收文件以及json参数

SpringBoot 如何同时接收文件以及json参数

  • 前端传参
  • 后端接收
  • 注意

前端传参

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){
	// 逻辑代码。。。。。。
}

注意

  1. 后端【同时接收文件以及json参数】时使用@RequestPart注解。
  2. 后端与前段要约定好文件与json的对应参数名files、saveDto
  3. 前端要注意请求头信息

http://www.kler.cn/a/375972.html

相关文章:

  • 034_Structural_Transient_In_Matlab结构动力学问题求解
  • 【Hello World 】
  • JAVA题目笔记(十一)多态+带有抽象类/接口的JavaBean类
  • 029_Common_Plots_Matlab常见二维绘图
  • scala---10.30
  • SQL Server身份验证模式
  • Spring Boot应用MongoDB
  • RabbitMQ的原理和集成使用
  • 秘钥认证与分发脚本(免密码登录)
  • Node.js——fs模块-同步与异步
  • 从语法到AI率:用ChatGPT润色论文的3个误区
  • Linux之实战命令63:ip应用实例(九十七)
  • LeetCode - 3259. 超级饮料的最大强化能量
  • 小林渗透入门:burpsuite+proxifier抓取小程序流量
  • Linux补基础之:系统和进程
  • 最新整理:Selenium自动化测试面试题
  • 24/11/2 算法笔记 拆解LDA
  • css, 文字超出用省略号,包含单行文本省略号,多行文本省略号
  • 深度学习之学习率
  • VSCode进阶之路
  • 如何使用python完成数据统计分析及预测?
  • HTML5加密技术详解
  • docker部署nginx+nacos+redis+java镜像和容器
  • 软考(中级-软件设计师)计算机网络篇(1101)
  • Vue3中Element Plus==el-eialog弹框中的input无法获取表单焦点
  • GAN在AIGC中的应用