form태그의 전송 방식 GET과 POST의 차이점
HTTP
■ HTTP란?
□ HTTP(HyperText Transfer Protocol)
✓ W3 상에서 정보를 주고받을 수 있는 프로토콜이다.
✓ HTTP 메서드에는 GET 방식과 POST 방식으로 정보를 주고받을 수 있다.
GET
■ GET
□ URL에 파라미터를 포함시켜서 요청하는 방식
✓ URL에 파라미터를 포함시킨다.
✓ 데이터를 헤더에 포함시켜 전송한다.
✓ 캐싱이 가능하다.
✓ 글자 수의 제한이 있다.
특징
✓ 전송 속도가 POST 방식보다 빠르다
✓ 데이터베이스에 대한 질의어 데이터와 같은 요청 자체를 위한 정보를 전송할 때 사용된다.
✓ 데이터가 URL 뒤에 붙기에 보안이 매우 취약하다
1
2
3
4
5
6
7
|
<form action="" method="GET">
텍스트를 입력하세요 :
<input type="text" name="search">
<input type="submit" value="전송">
</form>
|
cs |
다음과 같이 Yoon's Dev를 입력하고 전송해보자.
위와 같이 URL을 보면 test.html? 이후에 데이터를 포함시킨 것을 확인할 수 있다.
POST
■ POST
□ URL에 붙여 보내지 않고 Body에 데이터를 넣어서 보내는 방식
✓ 클라이언트와 서버 간 인코딩하여 서버로 전송한다
✓ 데이터를 Body에 포함시켜 전송한다.
. Header에 Content-Type 필드 안에 데이터 타입을 명시하여야 한다
✓ 전송할 데이터의 길이의 제한이 없다
특징
✓ 복잡한 형태의 데이터를 전송할 때 유용하다.
✓ 데이터베이스에 대한 갱신 작업과 같은 서버 측에서의 정보 갱신 작업을 원할 때 사용한다.
✓ 입력한 데이터가 URL에 보이지 않으므로 보안에 GET방식보다 우수하다
1
2
3
4
5
6
7
|
<form action="" method="POST">
텍스트를 입력하세요 :
<input type="text" name="search">
<input type="submit" value="전송">
</form>
|
cs |
다음과 같이 Yoon's Dev를 입력하고 전송해보자.
다음과 같이 URL에 아무것도 뜨지 않는 것을 확인할 수 있다.
'Language > └HTML, CSS' 카테고리의 다른 글
[HTML/CSS] form, input 태그의 다양한 타입 요소 | Yoon's Dev (2) | 2021.04.17 |
---|---|
[HTML/CSS] table 테이블 태그 속성 및 사용법, 표 만들기 | Yoon's Dev (0) | 2021.04.16 |