Restful API의 put과 patch의 차이
** 결론
PUT: 자원의 전체 교체, 자원 교체시 모든 필드 필요
만약 전체가 아닌 일부만 전달할 경우, 전달할 필드 외 모두 null or 초기값 처리되니 주의!!
PATCH: 자원의 부분 교체, 자원 교체 시 필드가 일부만 필요
**예시
데이터 스키마는 Person, 컬럼은 name과 age가 있따고 치자.
Put으로 데이터를 수정한다면,
기존의 데이터 : {"name":"김길동","age":"19"}
보내준 값 : {"name":"김개발"}
결과 : {"name":"김개발","age":null}
이처럼 Put은 데이터를 통째로 바꾸는 것이라고 생각하고, 전체 필드를 다 보내주어야한다.
만약 그렇지 않다면 기본값이나 null이 들어갈 것이다.
반면 Patch같은 경우는
보내준 값 : {"name":"김개발"}
결과 : {"name":"김개발","age":19}
보내준 값만 정보가 변경이 된다.
** 주의
PATCH는 지원하는 브라우저와 아닌 곳이 있다고 한다. 다음에 들어가서 확인해보는 것도 나쁘지 않다.
https://developer.mozilla.org/ko/docs/Web/HTTP/Methods/PATCH
PATCH - HTTP | MDN
HTTP PATCH 메소드는 리소스의 부분적인 수정을 할 때에 사용됩니다.
developer.mozilla.org
**참고
https://velog.io/@insutance/REST-API-HTTP-Method-PUT-vs-PATCH
[REST API] HTTP Method PUT vs PATCH
restful API 를 공부하던 와중 update 부분을 만들 때 , PUT 을 사용해야 한다는 걸 알게 되었다.하지만 구글링을 통해 또 알게 된 내용은 update 를 PATCH 를 통해서 하는 방법도 있다는 걸 알게 되었다.이
velog.io