
<form>: 클라이언트에서 서버로 데이터 전송 시 사용되는 다양한 속성을 제공.
| 속성 | 설명 |
|---|---|
method | 서버로 데이터를 전송할 때 사용할 HTTP 메소드 |
action | 서버에서 요청을 처리할 URL 지정 |
target | 폼 제출 후 응답이 표시될 위치 지정 |
autocomplete | 자동 완성 기능 사용 여부 |
enctype | 데이터 전송 시 사용되는 인코딩 타입 |
| 값 | 설명 |
|---|---|
GET | 데이터를 URL의 쿼리 스트링으로 전송. 주로 데이터를 조회할 때 사용. |
POST | 데이터를 요청 본문에 포함하여 전송. 주로 데이터를 생성하거나 업데이트할 때 사용. |
<form action="/submit/" method="POST">
method="POST" 는 폼 데이터를 서버에 전송 시 HTTP POST 메소드를 사용하여 전송함을 의미.<form action="/process-data/" method="POST">
action="/process-data/" 는 사용자가 폼을 제출할 때 데이터를 /process-data/ URL로 전송함을 의미.| 값 | 설명 |
|---|---|
_self | 현재 창이나 탭에 결과를 표시 (기본값) |
_blank | 새 창이나 탭에 결과를 표시 |
_parent | 부모 프레임에 결과를 표시 |
_top | 최상위 프레임에 결과를 표시 |
<form action="/submit/" method="POST" target="_blank">
target="_blank" 는 폼 제출 후 새 창이나 탭에서 결과를 표시하도록 지정.on은 자동 완성을 활성화, off는 비활성화.<form action="/submit/" method="POST" autocomplete="off">
autocomplete="off" 는 자동 완성 기능을 비활성화해 이전에 입력했던 정보가 자동으로 채워지는 것을 막음.| 값 | 설명 |
|---|---|
application/x-www-form-urlencoded | 기본값으로, 모든 문자들이 URL 인코딩되어 전송됨. 공백은 +로 대체되고, 특수 문자는 퍼센트 인코딩(%xx)됨. |
multipart/form-data | 파일 업로드 시 데이터를 여러 부분으로 나누어 바이너리 데이터를 포함한 데이터를 전송할 수 있음. 이미지 등의 업로드 기능에 꼭 필요. |
text/plain | 인코딩 없이 데이터를 전송. 공백은 +로 대체되지 않고, 특수 문자도 인코딩되지 않음. |
<form action="/submit/" method="POST" enctype="application/x-www-form-urlencoded">
enctype="application/x-www-form-urlencoded" 는 폼 데이터를 URL 인코딩 방식으로 서버에 전송함.<form action="/upload/" method="POST" enctype="multipart/form-data">
enctype="multipart/form-data"는 폼 데이터와 바이너리 데이터를 함께 전송하도록 만듬.<form action="/submit/" method="POST" enctype="text/plain">
enctype="text/plain"은 폼 데이터를 인코딩 없이 그대로 서버에 전송함.