서버에 새로운 데이터를 등록할 때 POST vs PUT

POST 기반 등록은 서버가 data URI를 만들어줌!!

즉 클라이언트는 등록될 리소스의 URI를 모른다!

POST /members

PUT 기반 등록

클라이언트가 리소스 URI를 알고 있어야 한다.

파일 등록 /files/{filename} → PUT

PUT /files/star.jpg

클라이언트가 직접 리소스의 URI를 지정한다

대부분 POST기반의 등록을 많이 씀!! 클라가 리소스의 정확한 위치를 알고있기는 어렵다! 보통 서버에서 리소스의 식별자를 만들어주기에…

→ 멱등성도 지키기 어렵다. 같은 요청을 여러번 보내도 같아야 하는데, PUT같은 경우는 다를 수가 있다! POST가 멱등성을 지키기에도 좋다!