PATCH
-
20230106 TIL PUT인가 PATCH인가 그것이 고민이로다TIL 2023. 1. 6. 20:15
리소스의 일부만 수정할 때 PATCH를 사용하고, 전체를 수정할 때 PUT을 쓴다라는 것은 알고 있었다. 그런데 이 사실만으로는 PUT을 쓸지 PATCH를 쓸지 결정을 하기가 어려웠다. 왜냐하면 나머지 정보도 같이 주면 결국 PATCH도 PUT과 다른 것이 없다고 생각했기 때문이다. PUT과 PATCH를 구분하는 또 한 가지 기준점은 멱등성이다. 멱등성은 몇 번을 반복해서 동일한 과정을 반복해도 같은 결과가 나오는 특성이다. PUT은 리소스를 완전히 교체해버리는 경우에 사용되고, 항상 멱등하다. PATCH는 멱등하거나 멱등하지 않게 설계할 수 있다. 질문 추천하기 기능을 만들면서 하게 된 고민이었다. 질문을 추천하면 추천한 사람의 token을 전송하게 되고, 이를 바탕으로 id를 찾아서 질문을 추천한 사..