REST API
API (Application Programing Interface)란?
응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 말한다. REST API 란 REST의 특징을 기반으로한 API를 말한다.
REST API의 규칙
- URI는 정보의 자원을 표현
- 자원은 대문자보다 소문자를 사용한다.
- 자원은 동사보다 명사를 사용한다.
ex) GET /Member/1 -> GET /members/1 - 자원에 대한 행위는 HTTP Method(GET, PUT, POST, DELETE 등)로 표현
- URI에 Method가 들어가면 안된다.
- CRUD를 나타내는 것은 URI에 사용하면 안된다.
ex) GET /members/delete/1 -> DELETE /members/1
URI 설계 시 주의 할 점
- 슬래시 (/ )는 계층 관계를 나타내는데 사용한다.
- URI 마지막 문자로 슬래시(/)를 포함하지 않는다.
- 하이픈(-)은 URI 가독성을 높이는데 사용한다.
- 밑줄(_)은 사용하지 않는다.
- URI 경로는 소문자가 적합하다.
- 파일확장자는 URI 에 포함하지 않는다.
- 리소스 간 연관 관계가 있는경우
ex) 리소스명/리소스 ID / 연관 리소스명
Collection 과 Document
Collection 과 Document 는 모두 리소스 라고 표현할 수 있으며 URI에 표현된다. 아래와 같은 URI가 있다고 해보자
http:// restapi.example.com/sports/soccer/players/13
여기서 sports , players 는 Collection 이고 soccer , 13 을 Document라고 한다.
Collection은 복수명사로 표현하고 Document는 단수명사로 표현한다.
RESTful
RESTful은 일반적으로 REST라는 아키텍처를 구현하는 웹 서비스를 나타내기 위해 사용되는 용어이다. REST를 따르는 시스템을 RESTful이라고 부른다.
CRUD를 모두 POST로만 처리하는 경우는 RESTful 하지 못한 경우이다.