- FormData 파일과 객체 한번에 보내기2021년 05월 26일 00시 29분 30초에 업로드 된 글입니다.작성자: jCurve728x90반응형
토이 프로젝트를 진행하면서 리액트에서 스프링 api 서버로 파일을 포함하는 객체를 List 형태로 보내야 했다.
처음에는 프론트단에서 FormData에 일반 객체를 담으면 무시되니까 multipart/form-data로 파일 여러개와
application/json content-type의 객체를 Blob으로 변환시켜 보내는 방식으로
Controller에서는 이렇게 받아서 구현을 했다. 근데 생각해보니 이렇게하면 보내기전에 객체를 한 번 Blob 처리를 해야되니 성능적으로 너무 손해라는 생각이 들었다.
그래서 FormData에 객체 배열을 포함시키는 바꾸는게 더 좋다고 생각하여
이런식으로 배열의 인덱스 접근해서 데이터를 추가하는 방식으로 변형했다.
백엔드 코드야 multipart를 2개로 나눠서 쓰던게 사라졌지만 결국 임시 클래스로 List의 값을 받는 Dto를 새로 생성해서 데이터를 받았기 때문에 더 개선 되었다는 생각은 들지 않지만 프론트가 개선되었으니 좋은 것 같다.
반응형'Spring' 카테고리의 다른 글
JWT Spring-Security-Test로 테스트시 인증정보 주입 (4) 2021.07.22 Jpa Entity 연관관계가 참조되어있는 객체 삭제 (0) 2021.06.15 Jpa Named Query 에러와 @Modifying , @Transactional (0) 2021.06.15 Spring Dto -- Nested Class? (0) 2021.06.04 MultiPartFile 저장시 LocalDateTime 과 for문 (0) 2021.04.07 댓글