GET메서드 & POST메서드
2021. 9. 21. 20:57ㆍ네트워크
GET 메소드
정보를 조회하기 위한 메서드
가져오는 것(SELECT)
사용방법
- URL의 끝에 '?'가 붙고, 요청 정보가 (key=value)형태의 쌍을 이루어 ?뒤에 이어서 붙어 서버로 전송한다.
- 요청 정보가 여러 개일 경우에는 '&'로 구분한다.
- Ex) www.urladdress.xyz?name1=value1&name2=value2
특징
- URL에 요청 정보를 붙인다. - 요청 정보를 한 눈에 볼 수 있다.
- GET 요청은 캐시될 수 있고, brower history에 남는다 - post메서드 보다 빠르다.
- GET 요청은 민감한 데이터 다룰때는 사용하지 않는다.
- GET 요청은 길이 제한이 있다. - 한 번 요청 시 전송 데이터(주솟값 + 파라미터)의 양은 255자로 제한된다.(HTTP/1.1은 2048자)
- GET 요청은 데이터 요청때만 사용할 수 있다.(수정X)
POST 메소드
서버의 값이나 상태를 바꾸기 위한 용도의 메서드
수행하는 것(Insert, Update, Delete)
사용방법
- 요청 정보를 HTTP 패킷의 Body 안에 숨겨서 서버로 전송한다.
- Request Header의 Content-Type에 해당 데이터 타입이 표현되며, 전송하고자 하는 데이터 타입을 적어주어야 한다. - form을 이용해 submit
- Default: application/octet-stream
- 단순 txt의 경우: text/plain
- 파일의 경우: multipart/form-date
POST /test/demo_form.php HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2
특징
- Body 안에 숨겨서 요청 정보를 전송한다. - 대용량의 데이터를 전송하기에 적합.
- 전송 데이터의 길이 제한이 없다.
- 클라이언트 쪽에서 데이터를 인코딩하여 서버로 전송하고, 이를 받은 서버 쪽이 해당 데이터를 디코딩한다.
- GET 방식보다 보안상 안전하다.
- 캐시되지 않는다.
요약: GET은 가져오는 것, POST는 수행하는 것
출처
'네트워크' 카테고리의 다른 글
PDU(Protocol Data Unit)_Frame, Packet, Segment, Datagram (0) | 2021.09.28 |
---|---|
쿠키(Cookie)와 세션(Session) (0) | 2021.09.23 |
CORS(Cross Origin Resource Sharing) (0) | 2021.09.21 |
HTTP와 HTTPS의 동작과정 (0) | 2021.09.16 |
HTTP 요청/ 응답 Header (0) | 2021.09.15 |