HTTP 요청 메소드 종류

Heejeong Choi·2021년 9월 12일
0
이전 포스트에서 HTTP 상태 코드에 대해 알아보았는데 HTTP 메소드를 공부하지 않았던 것이 말이 안되기 때문에 포스팅을 하고 넘어갈 것이다😉

HTTP 메소드란?

클라이언트가 웹 서버에게 사용자 요청의 목적이나 종류를 알리는 수단. 주요 메서드 GET/POST/PUT/DELETE와 기타 메소드 HEAD/OPTIONS/CONNECT/TRACE로 나뉘어 정리 할 수 있다.

GET

  • URI(URL)이 가진 정보를 검색하기 위해 서버측에 요청하는 형태. 보통 리소스를 조회할 때 사용하며, 서버에 전달하고 싶은 데이터는 query를 통해서 전달한다. 메시지 바디를 사용해서 데이터를 전달할 수는 있지만, 지원하지 않는 곳이 많아서 권장하지 않는다.

POST

  • 데이터 요청을 처리하고, 메시지 바디를 통해 서버로 데이터를 전달한다. 요청 URI(URL)에 양식 입력을 처리하기 위해 구성한 서버측 스크립트(ASP, PHP, JSP 등) 혹은 CGI 프로그램으로 구성되고 Form Action과 함께 전송되는데, 이 때 헤더 정보에 포함되지 않고 데이터 부분에 요청 정보가 들어가게 된다.

PUT

  • 리소스가 있으면 대체하고 리소스가 없으면 생성한다. POST 처럼 정보를 서버로 제출하는 것이지만 덮어쓴다고 보면 쉽다.

DELETE

  • 웹 리소스를 제거할 때 사용한다. 실제로 삭제되지 않았지만, 클라이언트는 삭제 되었다고 생각될 수 있다.

HEAD

  • HEAD 요청 방식은 GET과 유사한 방식이나 웹 서버에서 헤더 정보 이외에는 어떤 데이터도 보내지 않는다. 웹 서버의 다운 여부 점검(Health Check)이나 웹 서버 정보(버전 등)등을 얻기 위해 사용될 수 있다.

OPTIONS

  • 해당 메소드를 통해 시스템에서 지원되는 메소드 종류를 확인할 수 있다.

CONNECT

  • 웹 서버에 프록시 기능을 요청할 때 사용된다.

TRACE

  • 원격지 서버에 Loopback 메세지를 호출하기 위해 사용된다.

메소드설명CRUD멱등성안정성Path
Variable
Query
Parameter
DataBody
GET리소스 취득ReadOOOOX
POST리소스 생성/추가CreateXXOOO
PUT리소스 갱신/생성Create,
Upate
OXOOO
DELETE리소스 삭제DeleteOXOOX
HEAD헤더 데이터 취득-OO---
OPTIONS지원하는 메소드 취득-O----
TRACE요청메세지 반환-O----
CONNECT프록시 동작의
터널 접속으로 변경
-X----
  • 멱등성 : 메소드를 계속 호출해도 결과값이 같은지 안같은지
  • 안정성 : 계속해서 메소드를 호출해도 리소스를 변경하지 않는다는 뜻
profile
Welcome to my velog! I love learning something new to build up my ability in development field. I don't think it is shame not to know, but it is shame to pretend to know about something you don't know.

0개의 댓글