"그런 REST API 로 괜찮은가" 라는 꽤 유명한 영상을 보고
rest api 아키텍처에 그렇게 많은 규칙이 있는 줄 몰랐다.
단순히 get,post 등의 메소드설정, 정보전달, 약간의 네이밍 주의(?)
내가 그동안 고려했던 것은 이게 다였다.
Restful api = rest 스러운 api
그럼 rest 가 뭔데?
re - representational(상태)
s - state(표현)
t - transfer(주고받음)
"사람이 인지하기 쉽게 상태를 표현" 하는것으로 풀어 해석할수 있다.
http /uri + /주소 + /자원
c - Post
r - Get
u - Put
d - Delete
HTTP URI를 통해 자원을 명시하고, HTTP Method(Post,Get,Put,Delete)를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것
이라고 볼 수 있다.
1. 네이밍 관련
2.crud 관련
3.응답 헤더값 관련
http api 와 restful api 비교
HTTP 프로토콜의 인프라를 그대로 사용하므로 REST API 사용을 위한 별도의 인프라를 구출할 필요가 없다.
HTTP 프로토콜의 표준을 최대한 활용하여 여러 추가적인 장점을 함께 가져갈 수 있게 해준다.
HTTP 표준 프로토콜에 따르는 모든 플랫폼에서 사용이 가능하다.
Hypermedia API의 기본을 충실히 지키면서 범용성을 보장한다.
REST API 메시지가 의도하는 바를 명확하게 나타내므로 의도하는 바를 쉽게 파악할 수 있다.
여러가지 서비스 디자인에서 생길 수 있는 문제를 최소화한다.
서버와 클라이언트의 역할을 명확하게 분리한다.
단점은??