clohi 님의 블로그

HTTP Method 본문

CS/네트워크

HTTP Method

clohi 2026. 5. 12. 17:23

 

HTTP Method란?

 

 

 

클라이언트-서버 구조에서 요청과 응답이 이루어지는 방식

 

서버가 수행해야 할 동작을 지정해서 요청을 보내는 방식

 

 

HTTP Method의 종류

 

Method 설명
GET 서버에서 데이터를 조회할 때 사용
POST 서버에 새로운 데이터를 생성하거나 요청을 처리할 때 사용
PUT 서버에 있는 데이터를 전체 수정할 때 사용
DELETE 서버에 있는 데이터를 삭제할 때 사용
PATCH 서버에 있는 데이터의 일부만 수정할 때 사용
HEAD GET과 비슷하지만, 응답 본문 없이 헤더 정보만 반환
OPTIONS 서버가 지원하는 HTTP 메서드나 통신 옵션을 확인할 때 사용
CONNECT 클라이언트와 서버 사이에 터널 연결을 만들 때 사용
TRACE 요청이 서버에 도달하기까지 어떻게 전달되는지 확인할 때 사용

 

 


HTTP Method - GET

 

HTTP GET

 

 

  • GET 요청은 멱등성이라는 개념을 지니고 있다. 따라서 여러번 요청을 하더라도 리소스는 변하지 않는다.
  • GET 요청은 서버에 필요한 값을 전달할 때 주로 URL의 경로(Path Parameter)쿼리 스트링(Query String)을 사용한다.

 

 


HTTP Method - POST

 

HTTP POST

 

 

  • POST 요청은 멱등성을 지니고 있지 않다. 따라서 동일한 요청을 여러 번 전송하게 되면 서버에 리소스가 중복으로 생성되거나, 결제처럼 동일한 작업이 여러 번 처리되는 문제가 발생할 수 있다.
  • POST 요청은 서버에 필요한 값을 전달할 때 주로 HTTP 메시지의 본문(Body)을 사용한다. 새로운 리소스를 생성하거나 민감한 데이터를 안전하게 전송할 때 활용된다.

HTTP Method - PUT

 

HTTP PUT

 

  • PUT 요청은 멱등성을 지니고 있다. 따라서 여러 번 요청을 하더라도 지정한 리소스가 클라이언트가 전달한 데이터로 완전히 '덮어씌워지므로' 최종적인 서버의 상태는 동일하다.
  • PUT 요청은 대상 리소스를 식별할 때 URL의 경로를 사용하고, 대체할 전체 데이터는 HTTP 메시지의 본문(Body)에 담아 전달한다.

 


HTTP Method - DELETE

 

HTTP DELETE

 

 

 

  • DELETE 요청은 멱등성을 지니고 있다. 대상을 지우는 역할을 하므로, 한 번 삭제한 이후에 여러 번 다시 요청하더라도 '해당 리소스가 존재하지 않는 상태'는 변하지 않는다.
  • DELETE 요청은 삭제할 대상을 명확히 지정하기 위해 주로 URL의 경로(Path Parameter)를 사용한다. 데이터 수정이나 생성이 아니므로 일반적으로 메시지 본문(Body)은 사용하지 않는다.

 


HTTP Method - PATCH

 

HTTP PATCH

 

 

  • PATCH 요청은 스펙상 멱등성을 보장하지 않는다. 구현 방식에 따라 멱등하게 동작할 수도 있지만, 증가/감소({"age": "+1"}) 같은 요청을 보낼 경우 여러 번 요청할 때마다 리소스가 지속적으로 변할 수 있다.
  • PATCH 요청은 리소스의 전체가 아닌 '일부 정보'만 수정할 때 사용하며, 변경할 특정 데이터만 HTTP 메시지의 본문(Body)에 담아 전달한다.

'CS > 네트워크' 카테고리의 다른 글

XSS와 CSRF  (0) 2026.05.19
HTTP/3 와 QUIC  (0) 2026.05.05
DNS와 CDN  (0) 2026.04.26