-
📌 주요 메서드
GET : 리소스 조회
- 서버에 전달하고 싶은 데이터는 query를 통해서 전달
POST : 요청 데이터 처리, 주로 등록에 사용
- 메시지 바디를 통해 서버로 요청 데이터 전달
- 서버는 요청 데이터를 처리
- 메시지 바디를 통해 들어온 데이터를 처리하는 모든 기능을 수행
- 주로 전달된 데이터로 신규 리소스 등록, 프로세스 처리에 사용
PUT : 리소스 대체, 해당 리소스가 없으면 생성
- 리소스를 완전히 대체한다. (부분적으로 수정이 불가)
- 클라이언트가 리소스 위치를 알고 URI 지정 (POST와의 차이점)
PATCH : 리소스 부분 변경
DELETE : 리소스 삭제
📌 기타 메서드
HEAD
- GET과 동일하지만 메시지 부분만 제외하고, 상태 줄과 헤더만 반환
OPTIONS
- 대상 리소스에 대한 통신 가능 옵션(메서드)를 설명
CONNECT
- 대상 자원으로 식별되는 서버에 대한 터널을 설정
TRACE
- 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행
📌 HTTP 메서드 속성
안전(Safe)
- 호출해도 리소스를 변경하지 않는다.
- GET, HEAD
멱등(Idempotent)
- 한 번 호출하든 두 번 호출하든 100번 호출하든 결과가 똑같다.
- GET : 한 번 조회하든, 두 번 조회하든 같은 결과가 조회된다.
- PUT : 결과를 대체한다. 같은 요청을 여러 번 해도 최종 결과는 같다.
- DELETE : 결과를 삭제한다. 같은 요청을 여러 번 해도 삭제된 결과는 똑같다.
- POST : 멱등이 아니다. 두 번 호출하면 같은 결제가 중복해서 발생할 수 있다.
캐시가능(Cacheable)
- GET, HEAD, POST, PATCH 캐시 가능
- 실제로는 GET, HEAD 정도만 캐시로 사용
728x90댓글