본문 바로가기
public void static main()/Lecture

[HTTP웹기본지식] HTTP 메서드 - PUT, PATCH, DELETE

by 햄리뮤 2021. 3. 10.
반응형

[출처] 대표사진 넣으려고 가져옴! https://bytenbit.com/best-guidelines-design-restful-api/

와~ 한달전에 했던거 다시 공부할겸....!!

 

PUT (기존꺼 날려버리고 완 전 히 대체)

- 리소스를 대체 = 쉽게 이야기해서 덮어버림 (수정하는게 아니고 갈아치워버림) 

  -> 리소스가 있으면 대체

  -> 리소스가 없으면 생성

- 중요! 클라이언트가 리소스를 식별

  -> 클라이언트가 리소스 위치를 알고 URI 지정

  -> POST와 차이점

 

PATCH (리소스 부분변경)

 

DELETE

- 리소스 제거

 

---여기까지가 김영한 선생님의 강의!---

PUT vs. PATCH 

PATCH와 PUT은 둘 다 데이터의 수정을 위한 method!

PUT 요청 시 요청을 일부분만 보낸 경우 나머지는 default 값으로 수정되는 게 원칙이므로,

바뀌지 않는 속성도 모두 보내야함!

PUT /users/1 
{ 
"age": 15 
} 

HTTP/1.1 200 OK 
{ 
"name": null
, "age": 15 
}

(만약 전체가 아닌 일부만 전달할 경우, 전달한 필드외 모두 null 혹은 default 값처리되니 주의해야함.)

예를 들어, PUT HTTP 메소드로 gildong 이라는 유저의 나이(age)를 15로 변경하고자 할때 

수정된 값만 보낼 경우, 보내지 않은 데이터는 null로 변경되어 버림!

 

따라서, PUT 요청 시에는 아래와 같이 변경되지 않는 데이터도 모두 전달해야함!

PUT /users/1 
{ 
"name": "lima" 
"age": 15 
} 

HTTP/1.1 200 OK 
{ 
"name": "lima"
, "age": 15
}

그러나 PATCH를 이용하여  ‘age’만 변경하는 요청을 보내면,

새롭게 바뀐 부분만 반영되며 나머지는 기존의 데이터가 유지됨!

 

PATCH /users/1 
{ 
"age": 15 
} 

HTTP/1.1 200 OK 
{ 
"name": "lim"
, "age": 15 
}

 

오! 튜나 개발자님이 너모 잘 설명해주셔서 한번에 잘 알아들었지모야! 너모 감사하구여!

 

 

 

 

 

 

[출처] www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard

 

모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의

실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., 웹 기술을 사용하는 개발자라면 누구나 OK!꼭 필요한 HTTP의 핵심을 알려드립니다. 📣 확인해주세요!본 강의는 자바 스

www.inflearn.com

[출처] devuna.tistory.com/77

 

[REST API] REST API 규칙/PUT과 POST 차이/PUT과 PATCH 차이

먼저, REST란? Representational State Transfer의 약자이며, 다음과 같이 구성되어 있다. 자원(Resource): URI 행위(Verb): HTTP Method 표현(Representations) 즉 REST는 URI를 통해 자원을 표시하고, HTTP M..

devuna.tistory.com

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의들은

내용이 정리가 되었습니다.

그림들은 그림밑에 출저표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글