HTTP 메서드

Jongwon·2022년 7월 5일
0

Http 기본개념

목록 보기
4/7

HTTP GET

리소스를 조회하는 기능을 가집니다.

HTTP POST

데이터를 처리하거나, 새 리소스를 생성하는 기능을 가집니다.
또한 조회 데이터를 넘겨야 하지만 GET과 같은 다른 메서드를 이용하기 애매한 경우에도 사용합니다.
서버가 직접 리소스 URI를 생성해주기 때문에 신규 유저 등록과 같은 상황에서 쓰입니다.

HTTP PUT

리소스를 대체하는 기능을 가집니다. 리소스가 없으면 새로 생성하고, 있으면 완전히 대체합니다.
클라이언트가 리소스 위치를 알고 URI를 지정한다는 점에서 POST와 차이가 있습니다.
클라이언트가 직접 리소스를 관리하는 스토어에 파일을 저장할 때 사용가능합니다.

ex)
PUT /members/100 HTTP/1.1
~~

HTTP PATCH

PUT은 완전히 리소스를 대체하였는데, PATCH는 부분적으로 교체가 가능합니다.

ex)
기존에 `username: JWK`, `phone: 010-0000-0000` 이란 데이터가 있었을 때
PUT 'username: JW`를 보내면 -> 'username: JW` 만 남습니다.
PATCH 'username: JW`를 보내면 -> 'username: JW`, `phone: 010-0000-0000`이 됩니다.

HTTP DELETE

리소스를 제거할 때 사용됩니다.

메서드의 속성

SAFE

호출해도 리소스를 변경하지 않는 메서드인가?
ex) GET

Idempotent

호출 횟수에 상관없이 결과가 같은 메서드인가?
ex) GET, PUT, DELETE
-> 단, 외부요인으로 리소스가 변경된 것은 신경쓰지 않습니다.

  • 멱등이라는 속성의 장점은 장애 발생 시 한번 더 실행하는 자동복구 메커니즘을 할 수 있다는 것

Cacheable

응답 결과 리소스를 캐시에 저장해도 되는가?
ex) GET, HEAD

profile
Backend Engineer

0개의 댓글