
MIME 타입은 메일 본문, 헤더, 첨부 파일 등을 식별하기 위한 표준입니다.
MIME 타입에는 여러 종류가 있습니다.
- text/plain : 텍스트 형식으로 된 메시지
- text/html : HTML 형식으로 된 메시지
- multipart/mixed : 여러 타입의 첨부 파일을 포함하는 메시지
- multipart/alternative : 여러 타입의 메시지를 포함하는 메시지
- multipart/related : 관련된 여러 타입의 메시지를 포함하는 메시지
- multipart/form-data : HTML 양식 데이터를 포함하는 메시지
multipart/form-data 타입은 여러 개의 파일을 첨부할 때 사용하는 타입입니다.
multipart/form-data 타입을 사용하는 메일은 다음과 같이 구성됩니다.
- Boundary : multipart/form-data 타입을 구분하는 문자열
- Header : 메시지 헤더
- Body : 메시지 본문
- Attachment : 첨부 파일
예를 들어, multipart/form-data 타입을 사용하는 메일은 다음과 같습니다.
#hostingforum.kr
Content-Type: multipart/form-data; boundary="---------------------------boundary"
---------------------------boundary
Content-Disposition: form-data; name="file1"; filename="file1.txt"
Content-Type: text/plain
파일 내용
---------------------------boundary
Content-Disposition: form-data; name="file2"; filename="file2.txt"
Content-Type: text/plain
파일 내용
---------------------------boundary--
multipart/form-data 타입을 사용할 때 발생할 수 있는 문제점은 다음과 같습니다.
- Boundary 문자열이 중복되면 메시지가 깨질 수 있습니다.
- 첨부 파일의 이름이 중복되면 메시지가 깨질 수 있습니다.
- 첨부 파일의 크기가 너무 크면 메시지가 전송되지 않을 수 있습니다.
따라서 multipart/form-data 타입을 사용할 때는 Boundary 문자열을 유니크하게 설정하고, 첨부 파일의 이름을 중복되지 않게 설정하고, 첨부 파일의 크기를 제한해야 합니다.
2025-05-18 13:44