이 상황에서 검색 결과 파일이 포함 된 zip 파일을 만들어 사용자에게 보내려고합니다. 다음은 현재 사용하려고 시도하는 코드입니다.OutputStream을 통해 브라우저에 zip 파일을 반환하려면 어떻게해야합니까?
File[] zippable = new File[files.size()];
File resultFile = ZipCreator.zip(files.toArray(zippable), results);
InputStream result = new FileInputStream(resultFile);
IOUtils.copy(result, response.getOutputStream());
그러나 현재로서는 제대로 작동하지 않습니다. 내가 만든 zip 파일을 반환하는 대신 html 파일을 반환합니다. 나중에 수동으로 파일 확장명을 변경하면 파일의 내용이 내가 필요한 검색 결과임을 알 수 있습니다. 따라서 문제는 응답에 적절한 확장을 반환하는 것입니다.
누구에게이 상황에 대한 조언이 있습니까?
내가 여기 오해를하고있을 수도 있습니다. 나는 코드에 한 줄을 추가 했으므로 이제는'response.setHeader ("Content-Type", "application/zip");을 읽는다. 그래도 성공하지 못했다. 이 호출은 IOUtils.copy – Bennie
@Bennie를 호출하기 직전입니다. 정상적으로 보이지만 ZIP 파일에 사용할 "올바른"MIME 유형에 대한 혼란이 있습니다. 따라서이 값을 가지고 놀고 싶을 수도 있습니다 . – maerics
좋아요, 지금은 파일을 반환하기 위해 작동 중입니다. 파일이 "exportZipSearchResults.htm.zip"인 곳에서 이상한 일을합니다. 응답의 파일 이름을 변경하는 기본 제공 방법이 있습니까? – Bennie