Backend/기타
REST API 와 Web API
Jayyy.H
2021. 4. 29. 02:44
REST API란?
- REST는 Representational State Transfer의 약자이고, REST AIP는 이러한 REST 형식의 API를 의미한다.
- REST를 만족하기위한 요구조건은 다음과 같다.
- Client-Server : HTTP를 이용함으로써 만족함
- Stateless : HTTP를 이용함으로써 만족함
- Cache : HTTP를 이용함으로써 만족함
- Uniform interface
- Resource는 URI로 식별되어야 한다.
- Resource를 생성, 수정, 추가 시 HTTP 메시지에 표현을 해 전송해야한다.
- 메시지는 Self-Descriptive 해야한다. JSON 메시지가 어디에 전달되는지, 이 메시지의 구성요소가 어떤 의미를 표현해야 Self-Descriptive라 부른다.
- 애플리케이션의 상태는 Hyperlink를 이용해 전이되어야 한다.(HATEOAS)
<a>
태그와 같이 웹 페이지에서 제공하고 있으나 이를 API에서 제공하기는 쉽지않다.
- Layer system : HTTP를 이용함으로써 만족함
- Code on Demand : HTTP를 이용함으로써 만족함
- REST의 요구조건 중 Uniform interface를 지원하는 것이 쉽지 않아 서비스에서 제공하는 API들을 Web API(HTTP API)라고 부르기도 한다.
Web API란?
- URI는 정보의 자원을 표현해야 한다.
GET /members
- 자원에 대한 행위는 HTTP Method(
GET
,POST
,PUT
,DELETE
)로 표현한다. - 슬래시(
/
)는 계층을 나타낼 때 사용한다.- http://jay.com/member/1/items
- 마지막
/
는 포함하지 않는다. - 하이픈(``)은 URI의 가독성을 높이고자 할 때 사용한다.
- 언더스코어(
_
)는 사용하지 않는다. - URI 경로는 소문자만을 사용한다.
- 파일 확장자는 포함하지 않는다.