출저
- 위코드자료
- 위키백과
- A MEAN Blog
Representational State Transfer
직역하면 대표적인 상태 전달이 되는데 이는 문서, 그림, 데이터등 소프트웨어가 관리하는 모든 것들을 가리키고, 이의 상태를 전달하는 것을 뜻한다.
한마디로, 소프트웨어 아키텍처의 한 형식으로 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반을 말한다.
이는 좁은 의미로, HTTP를 통해 CRUD를 실행하는 API
를 뜻한다.
REST의 비공식적 구현 가이드로 구체적인 가이드라인은 없다. 하지만, 보통 위의 REST 아키텍처를 따르는 구조를 RESTful 하다고 하며 RESTful API 와 같은 형식으로 많이 쓰인다.
Application Programming Interface
응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스이다.
Self-descriptiveness
로 API 그 자체만으로도 목적이 쉽게 이해가 된다. 슬래시 구분자(/)는 계층 관계를 나타내는 데 사용
GET users/portfolios
URI 마지막 문자로 슬래시(/)를 포함하지 않는다.
GET users/portfolios/ (X)
밑줄(_)은 URI에 사용하지 않고, 하이픈(-)은 URI 가독성을 높이는데 사용
URI 경로에는 소문자가 적합하다.
파일 확장자는 URI에 포함시키지 않는다.
인터넷에 있는 자원을 나타내는 유일한 주소
HTTP request가 의도하는 action을 정의한 것
HTTP request에서 server로 보내는 데이터 (body)