diff --git a/src/main/java/ru/soune/nocopy/controller/ApiController.java b/src/main/java/ru/soune/nocopy/controller/ApiController.java index 5a0ae0b..aed2408 100644 --- a/src/main/java/ru/soune/nocopy/controller/ApiController.java +++ b/src/main/java/ru/soune/nocopy/controller/ApiController.java @@ -524,19 +524,13 @@ public class ApiController { // errorData)); // } - StreamingResponseBody responseBody = outputStream -> { - try (InputStream stream = cloudStorageService.readFileFromStorage(entityResponse.getProtectedFilePath())) { - ByteStreams.copy(stream, outputStream); - } catch (NoSuchKeyException e) { - throw new ResponseStatusException(HttpStatus.NOT_FOUND, "File not found"); - } - }; + byte[] bytes = cloudStorageService.readFileFromStorageBytes(entityResponse.getProtectedFilePath()); return ResponseEntity.ok() .contentType(MediaType.APPLICATION_OCTET_STREAM) .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + entityResponse.getFileName() + "\"") - .body(responseBody); + .body(bytes); } catch (FileEntityNotFoundException e) { Map errorData = new HashMap<>(); errorData.put("fileId", fileId);