GET vs POST vs PUT vs PATCH

HTTP Get vs Post
https://blog.outsider.ne.kr/312

    • GET은 URI(URL)가 가진 정보를 검색하기 위해 서버 측에 요청하는 형태. 서버의 값이나 상태를 가져오기위해서 사용함.
    • POST는 URI(URL)가 요청 URI(URL)에 폼 입력을 처리하기 위해 구성한 서버 측 스크립트로 구성되고 Form Action과 함께 전송되는데, 이때 헤더 정보에 포함되지 않고 BODY 부분에 요청 정보가 들어가는 형태. 서버의 값이나 상태를 바꾸기 위해서 사용함.

     

  • HTTP POST vs PUT
    https://itchipmunk.tistory.com/156/312

    • POST는 클라이언트가 요청하는 메소드. 리소스의 위치를 지정하지 않고 리소스를 생성. 여러번 실행하면 각각 다른 곳에 새로운 리소스가 생성됨. 즉, idempotent(멱등 f(x)=f(f(x)) 같은 작업을 계속 반복해도 같은 결과가 나오는 경우)를 만족하지 않음.
    • PUT는 클라이언트가 요청하는 메소드. 리소스의 위치를 지정하고 그 위치에 리소스를 생성하거나 업데이트. 동일한 리소스를 수정하기 때문에 여러번 실행하여도 같은 결과를 보장함. 즉, idempotent(멱등법칙 f(x)=f(f(x)))를 만족함.

     

  • HTTP PUT vs PATCH
    https://itchipmunk.tistory.com/157

    • PUT은 해당 자원의 전체를 교체하는 의미. PUT은 전체 자원을 업데이트 하기 때문에 동일 자원에 대해서 동일하게 PUT을 처리하는 경우 멱등하게 처리됨.
    • PATCH는 해당 자원의 일부를 변경한다는 의미. 반면 PATCH로 처리되는 경우 자원의 일부가 변경되기 때문에 멱등성을 보장할 수 없음.