Сегодня я пытаюсь написать код для загрузки zip файла. Однако я обнаружил сложную проблему?
HttpServletResponse response
...
response.setContentType("application/zip");
response.setHeader("Content-Disposition", String.format("attachment; filename=myzipfile-" + new Date().getTime() + ".zip"));
File file = new File(somePath);
InputStream inputStream = new FileInputStream(file);
IOUtils.copy(inputStream, response.getOutputStream());
inputStream.close();
response.setContentLengthLong(file.length());
response.flushBuffer();
Затем я пытаюсь загрузить два файла, размер первого - 232, я могу загрузить его с Content-Length: 232 в заголовке.
Однако, когда я загружаю более крупный, размер которого составляет 8 392 236 байт, я также могу его загрузить. Но мне не удалось получить Content-Length из заголовка ответа?
Как можно понять, в чем проблема? Есть ли ограничение на длину содержания в заголовке ответа?