HTTP 프로토콜의 종류이다.
GET 메서드
- 정보를 조회하기 위한 메서드
- 가져와서 보여준다(select)
- url 끝에 ?가 붙고, 정보가 key=value 형태의 쌍을 이루어 서버로 전송된다.
- 요청정보가 여러개일 경우 &로 구분한다.
- ex) www.aa.com?name=value
- url에 요청 정보가 붙기 때문에 길이 제한이 있다.→대용량 데이터 전송 불가능
- url에 정보가 담겨 전송되기 때문에 보안에 취약하다.
- body는 비어 있는 상태로 전송된다.→body의 데이터 타입 표현하는 Content-Type도 비어 있는 상태
- post 방식보다 빠르다.
- 캐싱 사용이 가능하다.
POST 메서드
- 서버의 값이나 상태 바꾸기 위한 메서드
- 요청을 수행한다(Insert, Update, Delete)
- 요청 정보를 HTTP 패킷의 body 안에 숨겨서 서버로 전송한다.
- 즉, Content-Type에 데이터 타입이 표현된다.
- 대용량 전송이 가능하다.
- 클라이언트에서 정보를 인코딩하고, 서버에서 디코딩한다.
- 따라서 보안상 안전하다.
조회하기 위한 용도로 POST가 아닌 GET 방식을 사용하는 이유?
1) GET은 멱등성이 있다. 즉, 여러 번 요청해도 항상 동일한 결과를 반환한다.
따라서 여러 번 조회 요청을 해도 서버의 값이 바뀌지 않아야 한다. GET 방식이 적절하다.
2) 웹에서 모든 리소스는 Link할 수 있는 url을 가지고 있어야 한다.
다른 사람에게 웹페이지 주소를 넘겨줄 때 POST 방식을 사용한다면 요청 정보가 body에 있기 때문에 url만으로는 해당 사이트로 이동할 수 없다.
'CS > 네트워크' 카테고리의 다른 글
Authentification과 Authorization의 차이 (0) | 2021.05.25 |
---|---|
HTTP 헤더 (0) | 2021.05.25 |
TCP의 3 way handshake와 4 way handshake (0) | 2021.05.17 |
TCP/UDP의 Header (0) | 2021.05.17 |
TCP와 UDP (0) | 2021.05.15 |