320x100
320x100
멱등성
: 첫번째 수행과 그 이후에 수행한 결과가 모두 동일한 속성
- HTTP 메서드의 멱등성
: GET은 여러번 호출해도 같은 결과가 돌아오고 리소스에 변화를 일으키지 않기 때문에 멱등성이 보장된 메소드
: PUT 또한 여러번 호출해도 매번 같은 리소스로 업데이트 되기 때문에 멱등성이 보장된 메소드이다
: DELETE도 여러번 호출해도 삭제된 리소스에 대한 결과가 달라지지 않는다
: POST, PATCH의 경우 호출할때마다 응답이 달라지기 때문에 멱등한 메서드가 아니다. 이러한 메서드에 멱등성을 제공하려면 서버에서 멱등성을 구현해야한다
- API 관점
: 멱등한 API라면 두 번 이상 요청해도 결과는 처음 요청과 동일
: 돌아온 값이 같을 뿐만 아니라 서버상태(DB)에도 영향을 미치지 않음
API의 멱등성을 보장하는 방법
: 멱등키를 API 요청에 포함한다
: 이전 요청과 동일한 멱등키를 가진 요청을 받으면 서버에서는 이 요청을 중복으로 판단한 뒤 실제로 처리하지 않고 첫 요청과 같은 응답을 반환
: 요청 본문, URL 쿼리 매개변수, 헤더 중 하나에 멱등키를 포함해서 보내는데, IETF에서는 헤더에 포함하는 방법을 표준으로 제안
Reference
300x250
728x90
'Development > Development' 카테고리의 다른 글
멋진 API를 만드는 3가지 비결 (0) | 2023.08.19 |
---|---|
롱런하는 개발자 마인드셋 (0) | 2023.08.19 |
체크섬 (check-sum) 이란? (0) | 2023.08.19 |
사이드 프로젝트에 사용하기 좋은 free 플랜 서비스들 (0) | 2023.08.19 |
클린코딩을 하는데 구현을 못하는 개발자 (0) | 2023.08.19 |