카테고리 없음

GET/POST/PATCH /DELETE/PUT 대해서 설명하세요

JUNGKEUNG 2024. 6. 12. 07:41
반응형
 

GET과 POST는 HTTP 프로토콜에서 데이터를 서버로 전송할 때 사용하는 두 가지 주요 메서드이다. 이 둘의 차이점은 다음과 같다.

GET


  • GET: 리소스 조회
  •  URL의 쿼리 문자열을 통해 전송

 

 

POST


  • POST: 서버로 데이터를 전송한다.
  • 서버에서는 신규 리소스를 등록하고 생성된 리소스의 경로를 응답데이터로 반환
  • 서버에 전달하고 싶은 데이터는 메시지 바디를 통해 서버로 요청 데이터를 전달

 

 

PATCH


  • PATCH: 리소스의 일부를 업데이트
  • 부분 수정: 리소스의 특정 필드만 변경한다.
  • Idempotent(멱등성): 같은 요청을 여러 번 보내도 결과는 동일하다. (하지만 PUT보다는 덜 엄격하게 적용됨)
  • Request Body: 변경할 필드와 값을 포함한다.

 

 

PUT


  • PUT: 리소스를 전체 업데이트
  • 전체 수정: 리소스 전체를 새로운 내용으로 덮어쓴다.
  • Idempotent(멱등성): 같은 요청을 여러 번 보내도 결과는 동일하다.
  • Request Body: 전체 리소스를 포함한다.

 

 

DELETE


  • DELETE: 리소스를 삭제
  • 삭제: 지정한 리소스를 서버에서 제거한다.
  • Idempotent(멱등성): 같은 요청을 여러 번 보내도 결과는 동일합니다.
  • Request Body: 일반적으로 필요 없습니다.

 

 

 

 

GET과 POST의 차이점


  • 사용목적: GET은 서버의 리소스에서 데이터를 요청할 때, POST는 서버의 리소스를 새로 생성하거나 업데이트 할 때 사용된다.

 

  • DB로 비유하면 GET은 SELECT에 가깝고, POST는 CREATE에 가깝다.

 

  • 요청에 body 유무: GET은 URL 파라미터에 데이터를 담아 보내기 때문에 HTTP 메세지에 body가 없다. POST는 body에 데이터를 담아보낸다.

 

 

 

Script


Get은 리소스를 조회할 때 사용 되고, POST는 서버로 데이터를 전송할때 사용된다. 이때 주로 사용하는것은 회원가입이 있다. PUT은 요청 데이터를 사용하여 새로운 리소스를 생성하거나, 대상 리소스를 나타내는 데이터를 대체한다. PATCH는 리소스를 부분적으로 변경하며 DELETE는 리소스를 삭제할때 사용 된다.
 

 

 

참고 자료


https://velog.io/@theon2/GET-POST-%EB%B0%A9%EC%8B%9D%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C-%EC%84%A4%EB%AA%85%ED%95%B4%EC%A3%BC%EC%84%B8%EC%9A%94


https://www.youtube.com/watch?v=aCSryu_emlA

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC