From 7492b8aa7fe1b6e88b88d207cb6000cb0d5b90ea Mon Sep 17 00:00:00 2001 From: backdev-1 Date: Tue, 21 Apr 2026 01:31:30 +0700 Subject: [PATCH] dev fix file public endpoint --- .../soune/nocopy/controller/ApiController.java | 16 +--------------- .../soune/nocopy/controller/FileController.java | 6 ------ 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/src/main/java/ru/soune/nocopy/controller/ApiController.java b/src/main/java/ru/soune/nocopy/controller/ApiController.java index 6ec431a..d6a884a 100644 --- a/src/main/java/ru/soune/nocopy/controller/ApiController.java +++ b/src/main/java/ru/soune/nocopy/controller/ApiController.java @@ -504,9 +504,7 @@ public class ApiController { errorData)); } - Path filePath = Paths.get(entityResponse.getProtectedFilePath()); File file = cloudStorageService.readFileFromStorageByPath(entityResponse.getProtectedFilePath()); - long fileSize = Files.size(filePath); if (!file.exists()) { Map errorData = new HashMap<>(); @@ -518,11 +516,8 @@ public class ApiController { errorData)); } - String contentType = determineContentType(filePath); - return ResponseEntity.ok() - .contentLength(fileSize) - .contentType(MediaType.parseMediaType(contentType)) + .contentLength(file.length()) .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + entityResponse.getFileName() + "\"") .body(file); @@ -624,13 +619,4 @@ public class ApiController { return errorDetail; } - - - private String determineContentType(Path filePath) throws IOException { - String contentType = Files.probeContentType(filePath); - if (contentType == null) { - contentType = "application/octet-stream"; - } - return contentType; - } } \ No newline at end of file diff --git a/src/main/java/ru/soune/nocopy/controller/FileController.java b/src/main/java/ru/soune/nocopy/controller/FileController.java index 0754fd1..50a49ce 100644 --- a/src/main/java/ru/soune/nocopy/controller/FileController.java +++ b/src/main/java/ru/soune/nocopy/controller/FileController.java @@ -63,12 +63,6 @@ public class FileController { FileEntity fileEntity = fileRepository.findById(fileId) .orElseThrow(() -> new FileNotFoundException("Not found: " + fileId)); -// Path filePath = Paths.get(fileEntity.getFilePath()); -// if (!Files.exists(filePath)) { -// log.error("Not on disk: {}", fileEntity.getFilePath()); -// return ResponseEntity.notFound().build(); -// } - File file = cloudStorageService.readFileFromStorageByPath(fileEntity.getFilePath()); if (file == null || !file.exists()) {