这篇文章给大家分享的是有关如何解决swagger-bootstrap-ui升级Knife4j的文件下载乱码和Knife4j.txt问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、成都网站制作、安州网络推广、小程序定制开发、安州网络营销、安州企业策划、安州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供安州建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
依赖引入
com.github.xiaoymin knife4j-spring-boot-starter
注解开启
@EnableSwagger2 @EnableKnife4j public class SwaggerAutoConfiguration { //... }
下载乱码问题
出现乱码问题是因为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问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!