728x90
PUT
- 리소스를 대체
- 리소스가 있으면 대체
- 리소스가 없으면 생성
- 쉽게 얘기해서 기존 리소스를 완전히 덮어버림
- 클라이언트가 리소스를 식별
- 클라이언트가 리소스 위치를 알고 URI 지정 (어디에다가 어떤 데이터를 집어넣을거라고 지정해줌)
- POST와 차이점
ex)
리소스가 있으면 해당 자리에 데이터가 덮어짐.
리소스가 없으면 해당 자리에 데이터를 넣음
⚠️ 주의! 리소스를 완전히 대체한다.
ex) 회원 테이블에 name, age, address 가 있다.
100원 회원의 age만 바꾸고 싶어 100번에 바꾸고 싶은 age만을 PUT → age 말고 name, address 가 NULL로 바뀜
PUT은 사실 리소스를 수정하는게 아니다!
PATCH
- 리소스의 부분 변경
만약, PATCH가 되지 않을 경우 POST를 사용함
API 구현시 PUT과 PATCH의 차이
PUT
- 받은 DTO 그대로 update
PATCH
- 받은 id로 해당 자원을 찾은 후, 교체할 데이터만 수정해 DTO에 저장 → update
참고
https://tecoble.techcourse.co.kr/post/2020-08-17-put-vs-patch/
https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard
728x90
'Computer Science > Web programming' 카테고리의 다른 글
[Web] SSR vs CSR (4) | 2022.08.30 |
---|---|
Spring 버전별 특징 (2) | 2022.08.19 |
[CS] MSA 구조 정리 (0) | 2022.08.04 |
[Web] TDD 방법론 (1) | 2022.05.24 |
[Web] REST vs RESTful vs REST API(RESTful API) (2) | 2021.12.31 |