>  기사  >  Java  >  Spring Boot REST 서비스에서 파일 다운로드 오류를 수정하는 방법은 무엇입니까?

Spring Boot REST 서비스에서 파일 다운로드 오류를 수정하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-28 04:40:01438검색

How to Fix File Download Errors in Your Spring Boot REST Service?

Spring Boot Rest 서비스에서 파일 다운로드 문제 해결

Spring Boot REST 서비스에서 파일을 다운로드하면 오류가 발생할 수 있습니다. 이러한 문제를 해결하기 위해 제공된 서버 측 코드를 검사합니다.

<code class="java">@RequestMapping(path="/downloadFile",method=RequestMethod.GET)
public  ResponseEntity<InputStreamReader> downloadDocument(...) {
    ...
    return ResponseEntity.ok()...body(i);
}</code>

문제 식별

문제는 InputStreamReader 사용에 있을 수 있으며, 이로 인해 브라우저가 오류를 일으킬 수 있습니다. 다운로드가 실패합니다.

솔루션 옵션

  1. InputStreamResource 사용:
<code class="java">@RequestMapping(path="/download",method=RequestMethod.GET)
public ResponseEntity<Resource> download(...) {
    ...
    InputStreamResource resource = new InputStreamResource(new FileInputStream(file));
    return ResponseEntity.ok()...body(resource);
}</code>
  1. ByteArrayResource 사용:
<code class="java">@RequestMapping(path="/download",method=RequestMethod.GET)
public ResponseEntity<Resource> download(...) {
    ...
    ByteArrayResource resource = new ByteArrayResource(Files.readAllBytes(path));
    return ResponseEntity.ok()...body(resource);
}</code>

구현 세부 정보

  • InputStreamResource를 사용하면 InputStream을 직접 사용할 수 있지만 권장됩니다. 대용량 파일에는 사용하지 마세요.
  • ByteArrayResource는 전체 파일을 메모리에 로드하므로 작은 파일에 더 좋습니다.

이러한 솔루션 중 하나를 구현하면 다음 위치에서 파일 다운로드가 성공적으로 진행됩니다. Spring Boot REST 서비스.

위 내용은 Spring Boot REST 서비스에서 파일 다운로드 오류를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.