HTTP 메서드 속성

pastafromvictoriadesert·2023년 11월 17일
0

HTTP

목록 보기
2/2

📌1. 안전

  • 호출해도 리소스를 변경하지 않는다.

계속 호출해서 로그가 쌓여서 장애가 발생할경우?
-> 안전은 해당 리소스만 고려한다. 다른 부분은 고려 X

📌2. 멱등

f(f(x)) = f(x)

한 번 호출하든 백 번 호출하든 같은 결과가 조회된다.

  • GET : 한 번 조회하든, 두 번 조회하든 같은 결과가 조회된다.
  • PUT : 결과를 대체한다. 따라서 같은 요청을 여러 번 해도 최종 결과는 같다.
  • DELETE : 결과를 삭제한다. 같은 요청을 여러번 해도 삭제 된 결과는 같다.

👉 POST : 멱등이 아니다. 두 번 호출하면 같은 결제가 중복해서 발생 할 수 있다.

2.1 활용

  • 자동 복구 메커니즘

  • 서버가 TIMEOUT 등으로 정상 응답을 못 주었을 때, 클라이언트가 같은 요청을 다시 해도 되는가? 에 대한 판단 근거가 된다.

멱등은 외부 요인으로 중간에 리소스가 변경되는 것은 고려하지 않는다.

📌3. 캐시가능

  • 응답 결과 리소스를 캐시해서 사용해도 되는가?
  • GET, HEAD, POST, PATCH 는 캐시 가능
    👉실제로는 GET, HEAD만 캐시로 사용한다.

0개의 댓글

관련 채용 정보