HTTP(Hyper Text Transfer Protocol)는 컴퓨터 간에 하이퍼텍스트를 주고받기 위한 규약으로 컴퓨터끼리 데이터를 주고받으려면 명확한 약속이 필요한데, 그 중 HTTP의 규칙을 이용한다.
HTTP Method는 HTTP 규약 중 하나로, 특정 자원에 대해 수행하는 행동의 종류를 명시한다.
이러한 HTTP Method를 사용하면 단일 URI로 다양한 행동을 정의 가능 . 주로 사용되는 HTTP Method로는
1.GET(자원의 조회)
2.POST(자원의 생성)
3.PUT(자원의 수정)
4.DELETE(자원의 삭제)
가 주로 사용된다.
이는 DB의 4가지 기본 동작인 CRUD와 닮아 있는데,
Create(데이터 저장)은 -> POST,
Read(데이터 조회)는 -> GET,
Update(데이터 수정)는 -> PUT이나 PATCH,
Delete(데이터 삭제)는 -> DELETE
와 대응이 된다.
예를 들어,
POST(HTTPMethod) /post는 글을 저장하고,
GET(HTTPMethod) /post는 글을 조회하며,
PUT 또는 PATCH(HTTPMethod) /post는 글을 수정하고,
DELETE(HTTPMethod) /post는 글을 삭제하는 식으로 사용할 수 있다.
그런데 이HTTP Method는 규약으로써 사용되고 규칙은 아니다.
예를 들어, GET Method로 자원을 삭제해도 에러가 발생하지는 않지만 Best Practice에 맞게 설계하는 것이 권장된다.
HTTP Method를 잘 활용하면 RESTful API를 설계할 때 더욱 직관적이고 일관성 있는 API를 만들 수 있고. 이를 통해 개발자 간의 소통이 원활해지고, 코드의 가독성과 유지보수성도 높이는 것이 가능!!