REST API
API(Application Programming Interface)는 다른 소프트웨어 시스템과 통신하기 위해 따라야하는 규칙
- REST API란 Representational State Transfer의 약자로 웹의 장점을 활용할 수 있는 아키텍처
REST의 특징
URI로 지정한 리소스에 대한 조작을 통일되고 한정적인 인터페이스로 수행하는 아키텍처
2) Stateless
- 작업을 위한 상태 정보를 저장하고 관리하지 않음
- 세션이나 쿠키 정보를 별도로 저장하고 관리하지 않아 단순히 들어오는 요청만 처리
→ 서비스의 자유도가 높아지고 서버에서 불필요한 정보를 관리하지 않아 구현이 단순!
3) Cacheable
- HTTP 표준 웹을 사용해 기존 인프라를 활용 가능
- HTTP 프로토콜 표준에서 사용하는
Last-Modified 태그 등을 활용
4) Self-descriptiveness
- REST API 메시지만 보고도 쉽게 이해할 수 있는 자체 표현 구조로 구성
5) Client-Server 구조
- REST 서버는 API 제공 / 클라이언트는 사용자 인증이나 정보를 직접 관리하는 구조로 역할이 구분
- 클라이언트와 서버에서 개발할 내용이 명확하고 의존성이 줄어듦
6) 계층형 구조
- 다중 계층으로 구성 가능
proxy, gateway와 같은 중간 매체를 사용 가능
REST API 중심 규칙
1) URI는 정보의 자원을 표현 (명사)
2) 자원에 대한 행위는 Method로 표현 (GET, POST, PUT, DELETE 등)
DELETE /member/1
POST : 리소스 생성
GET : 리소스 조회
PUT : 리소스 수정
DELETE : 리소스 삭제
참고자료
https://meetup.toast.com/posts/92