Rest API

(Rest API 개발)PUT과 PATCH의 차이점

쿠카이든 2022. 8. 31. 16:00
728x90
HTTP Method 중에 PUT와 PATCH는 리소스의 업데이트를 의미한다.

 

리소스를 업데이트 한다는 점에서는 같은 역할을 하는 메소드처럼 보이지만

두개의 요청에는 약간의 차이가 있다.

 

PUT : 리소스의 모든 것을 업데이트 한다.
PATCH : 리소스의 일부를 업데이트 한다.

 

아래와 같은 회원이라는 리소스가 있다.

회원 (member) 1
이름 (name) 애용이
나이 (age) 10
성별 (gender) M

 

아래와 같은 요청을 보내면 

 

PUT /members/1

{
    name : "홍길동",
    age : 19,
    gender : "M"
}

 

회원 (member) 1
이름 (name) 홍길동
나이 (age) 19
성별 (gender) M

위와 같이 변한다.

 

 

이번에는 나이와 성별를 빼고 요청을 보내면

PUT /members/1

{
    name : "김길순"
}

 

회원 (member) 1
이름 (name) 김길순
나이 (age)  
성별 (gender)  

보내지지 않은 값에 대해서는 null 값으로 변하는 것이다.

 

다시 아래와 같은 회원이라는 리소스가 있다.

회원 (member) 1
이름 (name) 애용이
나이 (age) 10
성별 (gender) M

 

아래와 같은 요청을 보냈을때

PATCH  /members/1

{
    name : "김길순"
}

 

회원 (member) 1
이름 (name) 김길순
나이 (age) 10
성별 (gender) M

요청에 포함되어 있는 부분만 변경이 된다는 차이점이 있다.

 

정리 : PUT과 PATCH의 차이점을 인지하고 상황에 맞게 쓰면 될 것 같다. PUT일 경우 값을 비워서 보내면 NULL값이 채워짐을 주의할 필요가 있을 것 같다.

 

참고 : https://programmer93.tistory.com/39

 

HTTP 메소드 PUT , PATCH 차이 - 삽질중인 개발자

HTTP Method 중에 PUT와 PATCH는 리소스의 업데이트를 의미한다. 리소스를 업데이트 한다는 점에서는 같은 역할을 하는 메소드처럼 보이지만 두개의 요청에는 약간의 차이가 있다. PUT : 리소스의 모든

programmer93.tistory.com

 

728x90

'Rest API' 카테고리의 다른 글

(스프링부트 Rest API) 다건 삭제 관련  (2) 2022.08.30