[기술정리] MIME TYPE

Stupefyee's avatar
Nov 15, 2024
[기술정리] MIME TYPE

1. MIME: Multipurpose Internet Mail Extensions

  • 목적: 파일의 형식 및 콘텐츠 종류 식별
  • 주요 용도:
    • 웹 브라우저와 서버 간 데이터 처리
    • 파일 업로드 및 다운로드 시 파일 형식 확인
    • 보안 및 콘텐츠 처리
    • Content-Type >> 마임타입
  • 구성:
    • 타입/서브타입 형태
    • 예: type/subtype

2. 주요 MIME 타입 예시

💡
많이 사용하는 것은 굵은 글씨로 표기 됨

1. 텍스트 관련

  • text/plain: 일반 텍스트
  • text/html: HTML 형식 텍스트
  • text/css: CSS 스타일시트
  • text/javascript: 자바스크립트 코드

2. 이미지 관련

  • image/jpeg: JPEG 이미지
  • image/png: PNG 이미지
  • image/gif: GIF 이미지
  • image/svg+xml: SVG 벡터 이미지

3. 오디오/비디오 관련

  • audio/mpeg: MP3 오디오
  • audio/wav: WAV 오디오
  • video/mp4: MP4 비디오
  • video/webm: WebM 비디오

4. 애플리케이션 관련

  • application/json: JSON 데이터
  • application/xml: XML 데이터
  • application/pdf: PDF 문서
  • application/zip: ZIP 파일
  • application/x-www-form-urlencoded: 폼 데이터 전송 (URL 인코딩 방식)

5. 기타

  • application/octet-stream: 바이너리 파일

3. MIME 타입의 역할

  • 웹 서버와 클라이언트 간 데이터 전달:
    • Content-Type 헤더로 MIME 타입 전달
    • 클라이언트가 콘텐츠 형식을 올바르게 해석
  • 파일 식별:
    • 파일 형식을 명확히 구분
    • 예: .jpgimage/jpeg
  • 보안 및 콘텐츠 처리:
    • 악성 스크립트 실행 방지
    • 콘텐츠 유형에 따른 처리
  • 파일 업로드:
    • 파일 형식 제한 가능
    • 예: image/png만 허용

4. HTTP 헤더 예시

  • HTTP 요청: 클라이언트가 서버로 보낼 때
    • Content-Type: multipart/form-data; boundary=---boundaryString
  • HTTP 응답: 서버가 클라이언트로 보낼 때
    • Content-Type: text/html; charset=UTF-8
Share article

stupefyee