HTTP 메서드란
클라이언트와 서버 사이에 이루어지는 요청과 응답데이터를 전송하는 방식
HTTP 메서드의 종류는 총 9가지 지만 주로 쓰이는 메서드는 5가지!
주요메서드
GET : 리소스 조회
POST : 요청 데이터 처리 (주로 등록에 사용)
PUT : 리소스 전체 변경 / 해당 리소스가 없으면 생성
PATCH : 리소스 부분(일부) 변경
DELETE : 리소스 삭제
그 외 메서드
HEAD: 서버 리소스의 헤더(메타 데이터의 취득)
OPTIONS: 리소스가 지원하고 있는 메소드의 취득
CONNECT: 프록시 동작의 터널 접속을 변경
HTTP - GET
리소스 조회 메서드(Read)
GET메소드는 주로 데이터를 읽거나 검색할 때 사용되는 메소드다
만약 GET요청이 성공적으로 이루어지면 JSON과 함께 200 HTTP 응답 코드를 리턴하지만
에러가 발생한다면 주로 400 에러 혹은 404에러가 발생한다.
GET요청은 idempotent하다
idempotent하다는 말은 같은 요청을 여러번 하더라도 변함없이 항상 같은 답을 받을 수 있다는 뜻이다
HTTP - POST
전달한 데이터 생성 요청 메서드(Create)
POST 메소드는 주로 새로운 리소스를 생성할 때 사용된다
POST는 idempotent하지 않는다
POST요청을 반복해서 했을 때 항상 같은 결과물이 나오는 것을 보장하지 않는다는 의미다
메서디 바디(body)를 통해 서버로 요청 데이터를 전달하면 서버는 요청 데이터를 처리하여 업데이트한다
HTTP - PUT
리소스를 대체(수정)하는 메서드 (Update)
만일 요청 메서지에 리소스가 있으면 덮어쓰고 없으면 새로 생성해준다
HTTP - PATCH
리소스의 일부 부분을 변경하는 메서드 (Update)
PUT은 모든 요소를 수정해야하지만 PATCH는 일부 부분만 수정할 수 있다
HTTP - DELETE
리소스를 제거하는 메서드 (Delete)
상태코드는 대부분 200을 사용한다