如何解决swagger-bootstrap-ui升级Knife4j的文件下载乱码和Knife4j.txt问题
如何解决swagger-bootstrap-ui升级Knife4j的文件下载乱码和Knife4j.txt问题
这篇文章给大家分享的是有关如何解决swagger-bootstrap-ui升级Knife4j的文件下载乱码和Knife4j.txt问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
一、升级Knife4j准备工作
依赖引入
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId></dependency>
注解开启
@EnableSwagger2@EnableKnife4jpublicclassSwaggerAutoConfiguration{//...}
二、文件下载接口
下载乱码问题
出现乱码问题是因为
Knife4j
不支持@PostMapping
的文件缓存,需要将接口转成GetMapping
文件下载为
Knife4j.txt
文件流为空
配置
GetMapping
的produces = MediaType.APPLICATION_OCTET_STREAM_VALUE
设置响应头(注意空格和逗号)
response.setHeader("Content-Disposition","attachment;filename="+URLEncoder.encode(fileName,"utf-8"));
三、存在的问题
Get
请求不支持请求参数缓存,每次文件下载都要重新设置参数,非常不方便文件下载不支持
Post
请求如果返回数据过大,页面会非常卡,不建议升级
knife4j
感谢各位的阅读!关于“如何解决swagger-bootstrap-ui升级Knife4j的文件下载乱码和Knife4j.txt问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
推荐阅读
-
基于springboot+bootstrap+mysql+redis怎么搭建完整的权限架构
-
怎么使用bootstrap制作form表单
怎么使用bootstrap制作form表单这篇文章主要介绍了怎么使...
-
bootstrap如何实现滚动条
bootstrap如何实现滚动条本篇内容介绍了“bootstrap...
-
bootstrap3和bootstrap2有哪些区别
bootstrap3和bootstrap2有哪些区别这篇文章主要介...
-
vue与bootstrap有什么不同
vue与bootstrap有什么不同这篇文章主要介绍“vue与bo...
-
前端UI框架Bootstrap、Foundation、Semantic UI、Pure和UIkit有什么区别
前端UI框架Bootstrap、Foundation、SemanticUI、Pure和UIkit有什么区别...
-
日期范围选择组件bootstrap-daterangepicker怎么用
日期范围选择组件bootstrap-daterangepicker怎么用...
-
bootstrap导航栏如何实现居中
这篇文章将为大家详细讲解有关bootstrap导航栏如何实现居中,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇...
-
bootstrap中怎么实现图片自适应
bootstrap中怎么实现图片自适应,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴...
-
bootstrap中怎么实现一个动态进度条效果
bootstrap中怎么实现一个动态进度条效果,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇...