专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

十九、文件下载及图片预览

目前SwaggerBootstrapUi支持的响应类型如下:

类型 说明
application/octet-stream 二进制流
image/png 图片
image/jpg 图片
image/jpeg 图片
image/gif 图片

特别需要注意的是:不管是文件下载或者是需要图片预览,都需要在接口中指定接口的produces,否则不能达到预期效果,接口的produces可参考上面表格中列出项.

关于文件下载的支持

SwaggerBootstrapUi1.8.9版本中添加了application/octet-stream下载类型的支持,并在1.9.0版本中完善,只需要配置相应接口的produces,即可在doc.html页面中查看效果,如下图:

80_1.png

80_2.png

点击下载文件即可下载当前接口响应的二进制流.示例代码可参考Api190Controller.java

特别说明,需要指定相应的produces

@ApiOperation(value = "下载测试-有参数+请求头版",position = 3)
@GetMapping(value = "/downloadFileAndParam2",produces = "application/octet-stream")
public void postRequest3AndParam(@RequestHeader(value = "uud") String uud,@RequestParam(value = "name") String name, HttpServletRequest request, HttpServletResponse response){
    logger.info("header:{}",uud);
    download(name,response);
}

关于图片预览的支持

图片预览一般用在验证码等场景中,很多时候,需要直接展示出验证码的情况,如下图:

80_3.png

80_4.png

验证码预览的后端代码可参考ImageController.java

特别说明,需要指定相应的produces

@Api(value = "图片预览",tags = "图片预览")
@RestController
@RequestMapping("/api/image")
public class ImageController {

    @GetMapping(value = "/preview",produces = "image/jpeg")
    public void preview(HttpServletRequest request, HttpServletResponse response) throws IOException {
        //more....
    }
}

干货推荐

文章永久链接:https://tech.souyunku.com/11145

未经允许不得转载:搜云库技术团队 » 十九、文件下载及图片预览

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们