-
[Network] HTTP Methods - GET, POST, PUT, PATCH, DELETECS/Network 2021. 9. 27. 23:13
이 포스팅은 세미나를 위해 https://github.com/JaeYeopHan/Interview_Question_for_Beginner/tree/master/Network를 참고하여 작성하였습니다.
HTTP를 사용하여 데이터가 서버로 전달될 때 method라는 속성을 반드시 가지게 된다. method는 데이터를 보내는 목적을 표시해주는 역할을 하고, method에 따라 서버에서 데이터를 다르게 처리한다.
GET
- 서버로 resource를 요청할 때 사용
- 서버의 resource는 클라이언트로 전달만 될 뿐 변경되지 않음
- GET method로 데이터를 보내려면 URL 뒤에 붙여 보낼 수 있음
ex) www.example.com?id=test&password=1234
key, value 쌍으로 데이터를 넣어야 하며, HTTP Request Message Header에 포함되어 전송됨 - 데이터가 URL에 담겨 전송되기 때문에 전송할 수 있는 데이터의 크기가 제한적
- URL에 데이터가 그대로 노출되기 때문에 보안에 취약
POST
- 서버로 resource를 보내 해당 resource를 DB 혹은 서버에 저장해달라고 요청할 때 사용
- 데이터가 HTTP Request Message Body에 담겨 전송됨
- 데이터가 Body에 담겨 전송되기 때문에 GET method보다 보낼 수 있는 데이터의 크기가 큼
- 보내는 데이터가 Body에 포함되기 때문에 URL에 그대로 노출되는 GET method보다 보안에 이점이 있지만 HTTP Request Message는 클라이언트측에서 확인 가능하기 때문에 보안이 중요한 데이터는 암호화가 필요함
PUT
- 서버로 resource 전체 업데이트를 요청할 때 사용
PATCH
- 서버로 resource 일부 업데이트를 요청할 때 사용
DELETE
- DB, 서버에 존재하는 resource의 삭제를 요청할 때 사용
Reference
'CS > Network' 카테고리의 다른 글
[Network] DNS 동작 원리 (0) 2021.09.29 [Network] HTTP vs HTTPS (0) 2021.09.29 [Network] TCP vs UDP (0) 2021.09.28 [Network] TCP 연결과 해제 (0) 2021.09.28 [Network] Cookie와 Session (0) 2021.09.15