221001 AWS 이미지 업로드시 파일 유형과 용량 제한

Jongleee·2022년 10월 1일
1

TIL

목록 보기
68/737

AWS 이미지 업로드시 파일 유형과 용량 제한

상황

  • AWS를 통해 이미지 업로드시 멀티파트파일로 받아온다.
  • 이 때, 이미지가 아닌 파일을 업로드하거나 너무 큰 파일을 업로드 하는 경우에 서비스에 문제가 발생할 수 있다고 판단하였음.

해결방안

  1. 파일 유형의 경우 멀티파트파일에서 내장하고 있는 함수인 getContentType()을 사용하였음
  • mimeType을 판단하여 image/png 와 같은 형태로 반환하여 주기 때문에 이를 이용하여 startsWith("image")로 파일 유형을 제한하였다.
  • 유형에 속하지 않는 경우에는 예외처리하였다.
String type = multipartFile.getContentType();
if(!type.startsWith("image")) throw new CustomException(ErrorCode.FILE_TYPE_INVALID);
  1. 파일 크기의 경우 멀티파트파일에서 내장하고 있는 함수인 getSize()를 사용하였음
  • 일정 크기 이상인 경우 예외처리하였다.
long size = multipartFile.getSize();
if(size>3500000) throw new CustomException(ErrorCode.FILE_SIZE_INVALID);

0개의 댓글