webflux上传下载文件
上传文件
@PostMapping("addAttach")
public Mono<JsonResult> addAttach(@RequestPart("file") FilePart filePart,//获取文件参数@RequestPart("dataId") String dataId,//获取其他参数
){String strFileName = filePart.filename();//获取文件名File file = new File(strNewFilePath);filePart.transferTo(file);//转储文件JsonResult result=……return Mono.just(result);
}
注意:获取文件用RequestPart,接收参数类型为FilePart,同方式的其他参数也需要用RequestPart获取。
下载文件
@GetMapping("downloadFile")public Mono<Void> downloadFile(Long fileId, ServerHttpResponse response){FFile fFile= fileService.getFile(fileId);if(fFile==null) {return ServerHttpResponseUtil.writeHtml(response,"<html><head><meta charset=\"utf-8\"/></head><body>文件不存在!</body></html>");}else {String strFilePath = fileConfig.getStoreBasePath() + fFile.getStorePath();File file = new File(strFilePath);ZeroCopyHttpOutputMessage zeroCopyResponse = (ZeroCopyHttpOutputMessage) response;try {response.getHeaders().set(HttpHeaders.CONTENT_DISPOSITION,"attachment; filename=" + new String(fFile.getFileName().getBytes("UTF-8"), "iso-8859-1"));//输出文件名乱码问题处理} catch (UnsupportedEncodingException e) {e.printStackTrace();}response.getHeaders().setContentType(MediaType.APPLICATION_OCTET_STREAM);return zeroCopyResponse.writeWith(file, 0, file.length());}}
ServerHttpResponseUtil.writeHtml方法参见https://blog.csdn.net/whq12789/article/details/90085649
webflux上传下载文件相关推荐
- 初级版python登录验证,上传下载文件加MD5文件校验
服务器端程序 import socket import json import struct import hashlib import osdef md5_code(usr, pwd):ret = ...
- SecureCRT上传下载文件
2019独角兽企业重金招聘Python工程师标准>>> SecureCRT是一个仿真终端连接工具.它可以方便的连接SSH服务器,远程管理Linux.同时,它还能使用多种协议方便的上传 ...
- Linux下支持rz/sz上传下载文件
) 工具说明 在SecureCRT这样的ssh登录软件里, 通过在Linux界面里输入rz/sz命令来上传/下载文件. 对于RHEL5, rz/sz默认没有安装所以需要手工安装. sz: 将选定 ...
- python实现文件下载-python实现上传下载文件功能
最近刚学python,遇到上传下载文件功能需求,记录下! django web项目,前端上传控件用的是uploadify. 文件上传 - 后台view 的 Python代码如下: @csrf_exem ...
- 在Windows上使用终端模拟程序连接操作Linux以及上传下载文件
在Windows上使用终端模拟程序连接操作Linux以及上传下载文件 [很简单,就是一个工具的使用而已,放这里是做个笔记.] 刚买的云主机,或者是虚拟机里安装的Linux系统,可能会涉及到在windo ...
- python文件拷贝并校验_初级版python登录验证,上传下载文件加MD5文件校验
importosimportjsonimportsocketimportstructimporthashlib#import time deflogin(): usr= input('请输入用户名:' ...
- JavaWeb:上传下载文件
1. 文件上传概述 1.1 文件上传的作用 例如网络硬盘!就是用来上传下载文件的. 在智联招聘上填写一个完整的简历还需要上传照片呢. 1.2 文件上传对页面的要求 上传文件的要求比较多,需要记一下: ...
- Linux下scp无密码上传 下载 文件 目录的方法
这篇文章主要介绍了Linux下scp无密码上传 下载 文件 目录的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在Linux下远程备份的时候,需要配置scp的 无密码复制文件.目录.就把这个 ...
- python实现文件上传功能_python实现上传下载文件功能
最近刚学python,遇到上传下载文件功能需求,记录下! django web项目,前端上传控件用的是uploadify. 文件上传 - 后台view 的 Python代码如下: @csrf_exem ...
最新文章
- 我们常用的 Integer 内部为什么会去实现 Comparable 接口?
- 【Groovy】集合遍历 ( 使用集合的 collect 循环遍历集合并根据指定闭包规则生成新集合 | 代码示例 )
- java客户端发送token_基于token的会话保持机制
- Ajax调用MVC控制器参数为实体
- Linux 命令之 cd 命令-切换目录
- 前端学习(1036):bootstrap-js插件2
- 马化腾回应《腾讯没有梦想》:我的理想不是赚多少钱
- Python源码深度解析—引用计数
- 学会这个方法,轻松为PDF文件加密,快来码住
- 智能优化算法:萤火虫算法-附代码
- 【系统分析师之路】2012年上系统分析师下午论文真题
- TTL(UART)信号和RS232信号 对比
- 计算机拓扑结构定义,计算机网络拓扑结构的定义
- BUUCTF misc 专题(83)从娃娃抓起
- Kafka 入门教程(超详细)
- 操作系统作业:向内核中添加一个系统调用
- 奥特曼系列ol以前的服务器恢复,奥特曼系列ol怎么看之前登录过的大区
- 【数据结构 动态规划 单调栈】JZOJ_6305 最小值
- 如何让你pycharm用起来更舒服,看起来更美观
- Mat矩阵操作,C++
热门文章
- 工作148:父子组件传值 获取时间戳
- 前端学习(2421):项目反馈
- 前端学习(2016)vue之电商管理系统电商系统vue-quill-editor
- 前端学习(95):ps基本操作与图片格式
- 第八十二期:掌握这些监控报警优化技巧,百万年薪不在话下!
- windows:(1)xmind常用快捷键
- [Violation] Added non-passive event listener to a scroll-blocking ‘mousewheel‘ event.
- 全网首发!2020年AI、CV、NLP顶会最全时间表!
- 8s nfs 挂载文件_把你的树莓派家庭实验室变成一个网络文件系统 | Linux 中国
- excel服务器2010网站,excel服务器2010