-
REST API 설계 원칙 중 PUT, PATCH 차이 (멱등성 관련)Web 2025. 4. 15. 15:29728x90반응형
💡 멱등성(Idempotence)이란?
멱등성은 수학과 컴퓨터 과학에서 사용하는 개념으로, 같은 연산을 여러 번 적용해도 결과가 처음 한 번 적용했을 때와 동일한 성질을 말합니다.
REST API에서 멱등성은 다음처럼 이해할 수 있어요:
"같은 요청을 여러 번 보내더라도 서버 상태가 한 번 요청했을 때와 같아야 한다."
🔍 예시로 이해하기
DELETE /users/123
요청을 생각해봅시다.- 한 번 보내면 사용자 123이 삭제됩니다.
- 두 번 보내도 이미 삭제되어 있어서 서버 상태엔 변화가 없습니다.
→ 따라서
DELETE
는 멱등한 메서드입니다.✅ HTTP Method와 멱등성
HTTP Method 멱등성 있음? 설명 GET ✅ O 조회는 서버 상태를 바꾸지 않음 PUT ✅ O 특정 자원을 "정해진 값으로" 덮어쓰기 때문에 여러 번 해도 결과 같음 DELETE ✅ O 삭제는 한 번 이상 요청해도 결과 같음 (이미 없으면 그대로) POST ❌ X 요청마다 리소스가 새로 생성될 수 있어 멱등하지 않음 PATCH ❌ 보통 X 리소스를 "부분 수정"하므로 여러 번 하면 결과 달라질 수 있음 🔁 PUT vs PATCH - 멱등성 관점에서
항목 PUT PATCH 방식 전체 교체 (Replace) 부분 수정 (Modify) 멱등성 ✅ 있음 ❌ 없음 (보통) 예시 "이름: 홍길동, 나이: 30" 전체 덮어쓰기 "나이만 30으로 바꿔줘" ✍️ 블로그 글 작성 팁
- 실생활 예시로 설명하면 좋아요 (예: ATM에서 같은 금액을 두 번 송금)
curl
예제 같이 넣어주면 실용성 ↑- 멱등성 있는 메서드는 재시도(재요청) 상황에 유리하다는 점도 강조!
728x90반응형'Web' 카테고리의 다른 글
HTTP Status 상태 코드(2xx, 3xx) 에 대해 알아보자! (0) 2025.04.18 HTTP Status 상태 코드(4xx, 5xx) 에 대해 알아보자! (0) 2025.04.18 🌐 RESTful API 설계 원칙 정리하기! (0) 2025.04.15 HTTP란 무엇인가? (0) 2025.04.15 💡 인터넷이란? – 백엔드 개발자가 꼭 알아야 할 핵심 개념 정리 (1) 2025.04.15