java - .zip 文件下载为 f.txt 文件 - spring boot

标签 java spring-boot download

下面的代码总是下载一个 f.txt 文件,而不是在没有实际文件名和扩展名(这里是 .zip 扩展名)的情况下下载。

@RequestMapping(value = "/files/{fileId}", method = RequestMethod.GET, produces = "application/zip")
    public ResponseEntity<Resource> downloadFile(@PathVariable("fileId") String fileName) {
        log.info("Downloading file..!!!!");
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.valueOf("application/zip"));
        log.info("Content info : "+headers.getContentType().toString());
        File file = FileUtils.getFile("backup/" + fileName + ".zip");
        log.info("File name is : "+file.getName());
        FileSystemResource fileSystemResource = new FileSystemResource(file);

        return new ResponseEntity<>(fileSystemResource, headers, HttpStatus.OK);
    }

如果有人能告诉我错误在哪里/需要做一些修改,那就太好了?

最佳答案

f.txt 来自 Content-Disposition 响应 header 。这是修复 cve-2015-5211 的结果(RFD 攻击)

关于java - .zip 文件下载为 f.txt 文件 - spring boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41364732/

相关文章:

java - select 语句中出现意外标记

java - 使用Livy提交Spark作业时报错: User did not initialize spark context

mysql - 无法将数据保存到 mysql 数据库,在 gradle 项目中,BindingResult 和 bean 名称 'goal' 的普通目标对象都不能作为请求属性

Python nltk download 和 download_shell 在 punkt 尝试时都卡住(挂起)

.NET FtpWebRequest : How to check if file is ready to download

java - 通过文件 URL 将文件发送到客户端,无需在服务器上下载

java - 安卓编辑联系人

c# - UML 转 java 或 c# 工具?

oracle - 在 Spring Data Repository 中刷新 Oracle Materialized View

spring-boot - MockMvc 不再使用 Spring Boot 2.2.0.RELEASE 处理 UTF-8 字符