REpresentational State Transfer 의 약자로 자원(resource)의 표현(representation)을 매개로 상태(정보)를 주고 받는 모든 것을 의미한다.
- URI는 정보의 자원을 표현해야 한다.
- 자원에 대한 행위는 HTTP Method(GET, POST, PUT, PATCH, DELETE)로 표현한다. 행위(Method)는 URI에 포함하지 않는다.
위 원칙을 잘 지킨 API를 RESTful하다고 한다.
[ GET, POST, PUT, PATCH, DELETE ... etc ] http://some-domain.com/path/resource
위와 같이 자원은 명사를 사용하고, 슬래시로 계층 관계를 표현한다.
_
대신 -
을 사용하며, 소문자만 사용한다.
또한 파일 확장자는 URI에 포함하지 않는다.
그리고 자원에 대한 행위는 HTTP method로 표현한다. 따라서 URI에는 동사를 사용하지 않는 것이다. ( ex. /getAllUsers )