HTTP Method 중에 PUT 과 PATCH 는 리소스의 업데이트를 담당한다.
리소스를 업데이트 한다는 점에서는 같은 역할을 하는 메소드처럼 보이지만
두개의 요청에는 약간의 차이가 있다.
PUT : 리소스의 모든 것을 업데이트 한다.
PATCH : 리소스의 일부를 업데이트 한다.
회원(member) : 1
이름(name) : 홍길동
나이(age) : 25
성별(gender) : M
이라는 데이터가 존재한다고 생각해보자.
- PUT 을 통해 아래와 같은 요청을 보내면,
{
name : "김형준"
}
↓
회원(member) : 1
이름(name) : 김형준
나이(age) :
성별(gender) :
보내지지 않은 값에 대해서는 null 값으로 변하는 것이다.
- PATCH 를 통해 아래와 같은 요청을 보내면,
{
name : "김형준"
}
↓
회원(member) : 1
이름(name) : 김형준
나이(age) : 25
성별(gender) : M
요청에 포함되어 있는 부분만 변경이 되고,
나머지 데이터는 기존의 값을 유지한다는 차이점이 있다.