기타

[HTTP] Method 종류

비번변경 2022. 9. 22. 21:50

HTTP Method

HTTP 메서드는 클라이언트가 서버에게 주어진 리소스에 무엇을 하길 원하는지를 나타낸다.

2022.09.17 - [Flask] REST API 만들기에서 간단히 정리했지만, 이 글에서는 각 메서드를 그림과 함께 정리한다.

 

 

GET

서버에 Resource를 요청한다. 가장 일반적인 메서드로, URI 형식으로 요청한다.

GET

 

HEAD

GET과 비슷하지만 header 정보만을 요청한다. 즉, 응답 body를 반환받지 않는다.

HEAD

HEAD 메서드는 아래의 경우에 사용한다.

  • Resource를 받지 않고 찾기만을 원할 때
  • 객체가 존재할 경우 응답의 상태 코드를 확인할 때
  • 서버의 응답 헤더를 봄으로써 Resource가 수정되었는지를 확인할 때

 

POST

클라이언트가 요청 데이터를 HTTP Body에 담아 서버로 전송한다. HTML form 등으로 입력 데이터를 보낼 때 많이 사용한다.

POST

 

 

PUT

POST와 비슷하게 데이터를 서버로 전송하는 것은 동일하지만, 서버의 Resource의 데이터를 저장하기 위한 용도이다. 즉, GET과 반대이다.

PUT을 사용하면 서버가 클라이언트 요청의 Body를 확인하며, 요청된 URL이 이미 존재하는 경우에는 데이터가 갱신된다.

PUT

 

 

DELETE

요청 resource를 삭제한다. 다만 HTTP 규격에 클라이언트의 DELETE 요청을 서버가 무효화시킬 수 있도록 정의되어 있다고 한다.

DELETE

 

 

OPTIONS

웹 서버가 어떤 메서드를 지원하는지에 대한 정보를 요청한다.

OPTIONS

 

 

TRACE

요청 리소스가 수신되는 경로를 보여준다. 조금 더 풀어쓰면 클라이언트가 보낸 Request Packet은 방화벽, 프록시 서버, 게이트웨이 등을 거치면서 변조될 수 있다. 이때 서버에 도달했을 때의 최종 Request Packet 정보를 확인할 수 있다.

TRACE

거의 사용하지 않는다.

 

 

참고 문서

https://medium.com/@lyhlg0201/http-method-d561b77df7

http://www.ktword.co.kr/test/view/view.php?no=3791

 

728x90