Java Spring Return HTML文件强制下载

时间:2018-08-14 10:57:48

标签: java spring spring-mvc spring-boot

我需要从控制器提供静态HTML文件,以强制用户下载。我想创建POST控制器以强制返回HTML。最初,我创建了一个简单的GET方法来提供静态html文件供下载。

 @GetMapping(
            value = "/get-file",
            produces = {MediaType.APPLICATION_OCTET_STREAM_VALUE}
    )
    public @ResponseBody
    byte[] getFile(HttpServletResponse response) throws IOException {
        response.setHeader("Content-Disposition", "attachment; filename=\"test.html\"");
        InputStream in = getClass()
                .getResourceAsStream("/the-file-name.html");
        return IOUtils.toByteArray(in);
    }

一切正常。当我将GET方法更改为POST时:

@GetMapping -> @PostMapping

html文件不会强制下载,而是显示在浏览器中。 商业案例是强制下载(不是右键单击页面并另存为)

0 个答案:

没有答案