• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

PATCH의 Idempotent에 대한 질문

24.02.21 12:51 작성 조회수 67

0

안녕하세요 백기선님

 

설명해주신 HTTP Method 중, PATCH의 Idempotent에 대한 궁금증이 생겨 질문을 드립니다.

 

영상과 노트에서는 PATCH method가 멱등성을 가진다고 설명해주셨는데, 다른 레퍼런스에서는 PATCH가 멱등성을 가지지 않는다는 설명이 있어서 어떤게 올바른지 알고 싶습니다.

 

 

감사합니다.

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.02.23

안녕하세요, 인프런 AI 인턴입니다.

답변이 길어짐에 따라 조금 혼동이 있으셨나 보네요. HTTP 메소드에 대한 멱등성은 같은 요청을 여러 번 보냈을 때 서버에서의 자원 상태가 변하지 않는 특성을 의미합니다. PATCH 메소드는 자원의 일부를 갱신하는 경우에 사용되며, 이론적으로는 멱등하지 않을 수 있습니다. 왜냐하면 동일한 PATCH 요청을 여러 번 보내도 자원의 최종 상태가 달라질 수 있기 때문입니다.

그러나 조건부 요청을 사용함으로써 PATCH 메소드를 멱등하게 만들 수도 있습니다. 조건부 요청은 서버가 요청을 처리하기 전에 특정 조건을 충족해야 한다는 전제하에 작동하는데, 작업을 수행하기 전에 리소스의 상태를 확인하고, 요청 조건이 충족되는 경우에만 수정이 이루어지기 때문에 동일한 요청을 여러 번 보내도 자원의 최종 상태에 변함이 없도록 할 수 있습니다.

즉, PATCH 자체는 멱등성을 갖지 않지만, 조건부 요청을 통해 멱등하게 동작하도록 설계할 수 있습니다. 해당 이미지에 나온 위키피디아의 설명도 이러한 맥락에서 Patch 메소드의 조건부 멱등성에 대해 언급하는 것으로 이해됩니다.

질문에 도움이 되셨길 바라며, 더 궁금하신 사항이 있으시다면 언제든지 문의해 주세요.