클라이언트가 웹 서버에서 사용자 리퀘스트의 목적 혹은 종류를 알리는 수단이다.
💡 GET
: 리소스 조회
서버에서 클라이언트가 요청하는 경우, URL 입력, 링크 클릭의 경우에도 GET
에 해당한다.
GET
요청은 멱등성을 가져, 여러 번 조회를 하여도 리소스는 변하지 않는다.
GET
요청에서 서버에 데이터를 전달하는 경우, 쿼리스트링을 통해 전달한다.
💡 POST
: 리소스 생성, 수정
새로운 리소스를 생성, 기존 리소스를 수정하기 위해 서버에 데이터를 보내는 메서드이다.
리퀘스트 바디를 사용하고, 일반적으로 캐시되지 않는다.
서버의 데이터 변경이 일어날 수 있다.
멱등성을 가지지 않아, 여러 번 리퀘스트를 반복할 겨우 동일한 응답을 보장할 수 없다.
💡 PUT
: 리소스 대체, 수정, 없을 경우 생성
새로운 리소스를 생성하거나 기존 리소스를 수정하기 위해 서버에 데이터를 보내는 메서드이다.
서버에 리소스가 없을 경우 생성, 있을 경우 클라이언트가 보낸 데이터로 대체한다.
멱등성을 가진다.
💡 DELETE
: 리소스 삭제
지정한 리소스를 삭제하는 메서드이다.
서버의 데이터를 삭제하는 변경을 하며, 멱등성을 가진다.
💡 PATCH
: 리소스 부분 변경(수정)
기존 리소스의 부분적 수정을 위한 메서드이다.
PUT
은 데이터의 완전 대체이고, PATCH
는 부분 수정을 한다.
멱등성을 가지지 않는다.
HEAD
특정 리소스를 GET
메서드로 요청 시, 돌아올 헤더를 받기 위한 메서드이다.
OPTION
서버와 브라우저가 통신하기 위한 통신 옵션을 확인하기 위한 메서드이다.
어떤 method
, header
, content-type
을 제공하는지 확인할 수 있다.
CONNECT
대상 자원으로 식별되는 서버에 대한 연결 요청을 하는 메서드이다.