인프런 커뮤니티 질문&답변

시영님의 프로필 이미지
시영

작성한 질문수

모든 개발자를 위한 HTTP 웹 기본 지식

HTTP 메서드의 속성

HTTP 메서드의 속성 - 멱등

해결된 질문

작성

·

659

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예

[질문 내용]
GET 요청의 경우 리소스 조회에 주로 사용하며, 멱등해야한다고 이해했습니다.

  1. 조회수를 구현할 경우, GET요청을 100번 보낸다면 조회수가 100번 올라가니 멱등하지 않은건가요 ??

     

  2. 아니면 외부요인으로 중간에 리소스가 변경되는것은 고려하지 않는 것처럼 조회수도 따로 봐야하나요 ??

     

  3. 아니면 애초에 GET요청의 경우 리소스를 변경하지 않으니 조회수도 변경되면 안된다고 보고 POST 요청으로 보내야하나요 ??

답변 1

2

안녕하세요, 시영 님. 공식 서포터즈 y2gcoder 입니다.

GET 요청의 멱등성(idempotence)은 클라이언트가 동일한 요청을 여러 번 수행하더라도 서버의 리소스에 영향을 주지 않아야 한다는 원칙입니다. 따라서, 조회수를 구현할 때 GET 요청을 사용하면 멱등성 원칙에 어긋나게 됩니다. 요는 단순 GET 요청 API에서 내부에 조회수 증가 로직을 추가한다면 클라이언트의 요청에 따라 서버의 리소스에 영향을 미치는 것이므로 멱등하지 않게 됩니다.

조회수 증가와 같은 작업은 클라이언트 요청에 따라 서버의 상태를 변경하므로, 이 경우 POST 요청이 적절합니다.

감사합니다.

시영님의 프로필 이미지
시영

작성한 질문수

질문하기