Axios를 이용해 파일다운로드 모듈 제작중 서버에서 받아온 파일명을 처리하던중에 아래와 같이 서버에서 Content-disposition 헤더를 받았는데 Axios의 Response 객체에는 담겨있지 않는 이슈가 발생했다.
(이미지 출처 - https://github.com/axios/axios/issues/895)
원인
이미지 출처에도 나와있듯이 CORS 이슈이며, 서버에서 작업을 수행해 줘야 한다.
해결방법
1004lucifer
[ Java (Spring-Boot) ] 환경
@RestController @RequestMapping("/api/files") @CrossOrigin(value = {"*"}, exposedHeaders = {"Content-Disposition"}) public class FileBoundary { // code ... }
[ node.js + express + cors ] 환경
app.use(cors({ origin: 'http://localhost:8080', credentials: true, exposedHeaders: ['Content-Disposition'] }))
참고
- https://github.com/axios/axios/issues/895
- https://rieckpil.de/howto-up-and-download-files-with-react-and-spring-boot/
댓글
댓글 쓰기