Frontend
[HTML]form태그의 enctype속성 3가지에 대하여
Dddu
2024. 8. 25. 23:56
HTML form 태그의 속성에는 method,action,enctype 등이 있는데 입력 받은 데이터를 어덯게 처리할 것인지 설정하는데 사용 된다.
method : 전송 방식 - post , get
action : 전송 목적지 - url
enctype : 전송 데이터 형식 설정
특정 서버에 POST 요청을 통해 HTTP 요청 메시지 바디에 데이터(form data)를 보낼 경우 인코딩 타입을 지정할 수 있는데, 이때 form 태그의 enctype 속성을 이용할 수 있다.
enctype의 속성 값 즉, 인코딩 타입은 다음과 같이 3개의 타입이 할당될 수 있다.
1. application/x-www-form-urlencoded
우선 application/x-www-form-urlencoded의 경우 &으로 분리되고 '=' 기호로 키(key)와 값(value)을 연결하는 'tuple' 형태로 인코딩하는 방식이다. 모든 문자열은 전송되기 전에 인코딩된다. (공백은 "+"심볼로 변환되며, 숫자나 영어 알파벳이 아닌 문자들(한글, 특수문자 등)은 ASCII 16진수로 변환된다.)
기본값이므로 enctype설정이 없으면 이 속성이 선택된다.
2. multipart/form-data
이미지 등 파일 데이터 즉, 바이너리 데이터를 서버에 전송하는 경우 사용되는 인코딩 방식이다.
문자열이 인코딩되지 않는다. 이 속성은 보통 파일 업로드를 할 때 사용된다.
3. text/plain
text/plain 인코딩 타입의 경우 공백 문자(space)만 + 기호로 변환하는 인코딩 방식이다. 그 외의 문자는 인코딩이 되지 않은 채로 서버로 전송된다.