본문 바로가기

웹 개발

Post와 Put의 차이

Post와 Put 차이

일반적으로 GET은 조회, POST는 등록, PUT은 수정, DELETE는 삭제라고 생각한다.

POST와 PUT의 차이는 무엇인가

POST

post는 서버에 새 리소스를 등록하는 작업을 한다. 등록하는 리소스는 요청 BODY 에 담겨 넘겨진다. 응답은 200(확인) 또는 204(내용없음)이 적절하다.

PUT

요청한 URI에 이미 리소스가 존재한다면 PUT과 같이 전달된 body는 원본 서버에 수정된 버전으로 변경되어야 한다. 만일 리소스가 존재하지 않는다면 서버로 요청된 데이터로 새 리소스를 생성할 수 있다. 새 리소스가 생성된 경우 201(created)응답을 사용자에게 알려준다. 기존 리소스가 수정된 경우 200(확인) 혹은 204(내용 없음) 응답을 보내야한다. 리소스를 생성할 수 없거나 수정 할 수 없는 경우 적절한 오류 응답을 제공해야한다.

그래서 POST와 PUT의 차이는?

POST는 새 리소스를 생성, PUT은 리소스를 수정 혹은 생성하는 역할을 한다. 따라서 POST가 두번 실행된다면 리소스는 두개가 생기는 것이고 PUT이 두번 실행된다면 리소스가 두번 수정되거나 리소스가 하나 생기고 한번 수정되는 것이다.

 

참고

[HTTP/1.1: Method Definitions (w3.org)

'웹 개발' 카테고리의 다른 글

자바 디자인 패턴 - 싱글턴 패턴  (0) 2021.10.05
DNS(Domain Name System)  (0) 2021.10.05
객체지향 SOLID 원칙  (0) 2021.08.27
객체지향 원리  (0) 2021.08.26
자바 가상 머신(Java Virtual Machine, JVM)  (0) 2021.07.25