controller传输from-data数据格式的内容,取出传入数据为from-data格式的值

news/2024/3/29 16:19:22/文章来源:https://blog.csdn.net/yyuggjggg/article/details/127484690

传输from-data数据格式的内容

postman里面的格式如下
在这里插入图片描述
接下来,便将上面的内容转换为代码

第一步:将File转为MultipartFile格式

首先,我们只能将File转为改格式才能进行网络传输,转换方式请看这篇博客:https://blog.csdn.net/yyuggjggg/article/details/127454421

不看上面那篇博客也可以,网上搜索,有很多方法

第二步:按格式传入map

//FileToMultipartFile:这个是我自己写的File转为MultipartFile格式的方法
MultipartFile file = ParserUtils.FileToMultipartFile(fileStr);
MultiValueMap<String, Object> form = new LinkedMultiValueMap<>();
form.add("file", file.getResource());
form.add("name", "ceshi");
form.add("to", "you");

第三步:发送请求进传输

public void doPost(String url, MultiValueMap<String, Object> form) throws Exception {//设置请求头HttpHeaders headers = new HttpHeaders();MediaType type = MediaType.parseMediaType("multipart/form-data");//设置传输方式为multipart/form-dataheaders.setContentType(type);org.springframework.http.HttpEntity<MultiValueMap<String, Object>> httpEntity = new org.springframework.http.HttpEntity<>(form, headers);RestTemplate restTemplate = new RestTemplate();//用HttpEntity封装整个请求报文restTemplate.postForObject(url, httpEntity, String.class);
}

如此,便可以实现from-data格式的数据进行传输了

取出传入数据为from-data格式的值

取出字符串

@PostMapping("/test1")
public void test1(HttpServletRequest request) throws Exception{//取出form-data中name的值String a=request.getParameter("name");//取出form-data中to的值String b=request.getParameter("to");
}

取出二进制文件

这个可以是图片,也可以是文件等

@PostMapping("/test2")
public void test2(HttpServletRequest request) throws Exception{//取出form-data中的二进制字段MultipartHttpServletRequest multipartRequest=(MultipartHttpServletRequest) request;//file是form-data中二进制字段对应的nameMultipartFile accessory = multipartRequest.getFile("file");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_218441.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1.uniapp全局状态管理

概念&#xff1a;把多个组件之间共享数据抽离出来&#xff0c;通过一个“单例模式”进行管理 工具&#xff1a;具备全局状态管理的库 Vuex:全局状态管理中的库 步骤&#xff1a; 1.建立Store文件夹 2.建立index.js文件 3.在main.js中注册Vue插件 4.测试Vuex是否导入成功 …

新入手Mac配置前端环境教程

目录 1、安装 Xcode 2、安装 Homebrew 3、安装 Git 4、安装 nvm 利用 nvm 安装 node 跳槽新进入一家公司给新配置的 Mac 电脑 那么我们接下来该如何步入正常的前端开发流程呢 &#xff1f; 在此稍微记录一下 &#xff0c; 节省时间 &#xff0c;以防后期再用到 。 1、安…

AI视频融合平台EasyCVR视频广场分组列表高亮标识的增加

将EasyCVR视频融合平台与智能分析网关结合使用,可支持前端视频资源的统一接入与汇聚,以及智能分析结果输出、智能告警等,可实现的智能检测与识别功能包括:烟火识别、安全帽识别、口罩佩戴识别、人体检测、人脸识别、车辆识别、车牌识别、电动车检测、区域入侵检测、人体行为…

HTML元素大全(2)-表单

01、<form>表单 <form> 表单是比较重要的HTML元素,块元素,主要作用是向服务端提交数据。结合表单元素input使用,通过内部的button按钮提交(type="submit")表单数据。元素/属性 描述 值/备注<form> 表单元素action 提交表单的目标(服务端)地…

结束后台成百上千个python.exe

1.起因 因为种种原因&#xff0c;python代码写的不规范、IDE配置异常等导致内存激增&#xff0c;查看后发现有成百上千个python.exe在后台运行&#xff0c;连任务管理器打开都成了问题&#xff08;案例发生在windows&#xff0c;linux下仍有参考意义&#xff09;。 2.过…

Baklib产品知识库|为什么说客户体验非常重要?

几十年来&#xff0c;人们一直在寻找使其品牌成功的秘诀&#xff0c;企业和品牌一直想知道如何在竞争中脱颖而出&#xff0c;赢得客户的青睐。 有些企业为了赢得客户的信任&#xff0c;努力抢占市场份额&#xff0c;尽管他们的产品质量和服务与一些知名企业一样好&#xff0c;…

【图文安装教程】在docker中安装ES

在docker中安装ES怎么安装?本文就教大家怎么安装 1.部署单点es 1.1.创建网络 因为我们还需要部署kibana容器,因此需要让es和kibana容器互联。这里先创建一个网络: docker network create es-net 1.2.加载镜像 这里我们采用elasticsearch的7.12.1版本的镜像,这个镜像体积非常…

黑客丛林通关wp

0x01概述 一个集合的CTF闯关游戏,难度从简到难,可以尝试一玩 闯关链接:http://www.fj543.com/hack/ 0x02正文 第一关:输入正确密码就可以,并且提示浏览器端使用脚本进行身份验证就可以直接破解,右键看一下输入密码,显示正确,成功通关 第二关:提示是被脚本阻止了,显然…

企业推进数字化转型零信任是必须?

随着企业数字化转型的深入&#xff0c;各企业的网络结构日趋复杂并且向云转化&#xff0c;以往基于边界的网关型身份和访问控制体系难以应对新型威胁&#xff1b;网络接入模式也更加多元化&#xff0c;移动办公、远程接入、云服务等场景在后疫情时代成为新常态&#xff0c;这大…

五、Zabbix — 监控报警那点事儿

监控告警的分类&#xff1a; 邮件 个人邮箱或者企业邮箱&#xff0c;免费使用企业微信 — 告警应用&#xff08;机器人&#xff09; 需要企业微信&#xff0c;免费使用钉钉告警 阿里云服务&#xff0c;免费使用短信 收费…

【附源码】计算机毕业设计SSM校园快递代取系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

设计模式之命令模式(行为型)

1、命令模式定义 命令模式&#xff08;Command&#xff09;&#xff0c;将一个请求封装为一个对象&#xff0c;请求以命令的形式包裹在对象中&#xff0c;传递给调用对象&#xff0c;调用对象寻找可以处理该命令的合适的对象&#xff0c;并将命令传递给相应的对象&#xff0c;该…

creo草绘工程图标注字体大小、加粗设置

刚接触creo&#xff0c;字体又小又细&#xff0c;这的眼睛受不了&#xff01; 在网上找了很久&#xff0c;发现字体设置非常麻烦&#xff0c;我先是调整了字体的大小&#xff0c;但是字体很细&#xff0c;于是只能通过设置字体来改变粗细&#xff0c;实在找不到设置字体加粗的…

jenkins简介

参考链接&#xff1a;jenkins_L向上z的博客-CSDN博客_jenkins Jenkins详细教程_zhishidi的博客-CSDN博客_jenkins jenkins最主要的作用是什么&#xff1f; - 知乎 1.背景   在实际开发中&#xff0c;我们经常要一边开发一边测试&#xff0c;当然这里说的测试并不是程序员对…

golang-gin框架快速入门--推荐

1.设置golangd的配置&#xff1b; go env :命令后&#xff0c;获取安装gin的国内代理&#xff0c;解决访问国外网站下载包慢的问题 1.1.检查golangd的设置 检查上述三个地方的设置&#xff0c;看看是否正确&#xff0c;重点是工modules这个地方设置&#xff0c;查看是否启用了国…

git实用操作:git rebase -i 合并多个 commit

我们开发的过程中&#xff0c;可能会有多次的修补提交&#xff0c;就会出现多条提交记录和备注信息&#xff0c;此时我们可以使用 git rebase -i来合并多个commit&#xff0c;以简化提交记录 1.合并最近的 4 次提交纪录&#xff0c;执行&#xff1a; git rebase -i HEAD~42.自…

今天不想上班

无语 - - 为什么项目迁移了 算了 不需要脑子思考复杂的 反正我干就是了&#xff0c;领了工资干了活&#xff0c;我菜那是我的事。 顺便学习一下好了。 可能我基础不太行吧。 关于我和同事新一起合作写一个项目 老板让我优化代码后老板满意了同事被封装的痛苦了。 现在…

TortoiseSVN下载安装及问题总结

文章目录TortoiseSVN介绍下载安装问题使用首先将客户端与服务器进行连接检出提交TortoiseSVN介绍 TortoiseSVN是一个开源的版本控制系统&#xff0c;也就是说Subversion管理者随着时间而改变的数据。这些数据放置在任何一个中央资料档案库&#xff08;repository&#xff09;中…

中国定制家具行业深度调研及投资前景预测报告

欧派家居VS索菲亚:家具商业的布局史 家具产品的特性决定了家具产业在经济和社会中的重要地位。随着经济的不断发展&#xff0c;家具行业也发展迅速。目前&#xff0c;欧派家居和索菲亚是国内家具行业的龙头企业主。 2.家具企业布局及经营状况: ——家具经营类型:索菲亚、欧派…

Apollo星火计划学习笔记第四讲1——Apollo高精地图模块

Apollo学习笔记零、目录一、高精地图的作用1.1 相对于传统地图二、高精地图介绍2.1 高精地图构成2.2 高精地图制作2.2.1 地图采集2.2.2 地图制作2.2.3 地图标注工具2.2.4 地图保存三、Apollo高精度地图3.1 高精地图目录结构3.2 高精地图格式3.3 Apollo高精地图API接口四、实践案…