REST API
REST: Web(HTTP)의 장점을 활용한 아키텍쳐
REST (REpresentational State Transfer) 기본
Method | 의미 | Idempotent |
---|
POST | Create | No |
GET | Select | Yes |
PUT | Update | Yes |
DELETE | Delete | Yes |
(Idempotent : 한번 수행하냐, 여러 번 수행했을 때 결과가 같나?)
-
Resource
-
Message
- 메시지 포맷이 존재 : JSON, XML 과 같은 형태가 있습니다. (최근에는 JSON을 씁니다)
HTTP POST, http://songunnie/useers.
{
“users” : {
“name” : “terry”
}
}
REST의 특징
- Uniform Interface
- HTTP 표준만 맞는다면, 어떤 기술도 가능한 Interface 스타일
예) REST API 정의를 HTTP + JSON 으로 했다면, C, Java, Python, IOS 플랫폼 등 특정 언어나 기술에 종속 받지 않고 모든 플랫폼에 사용이 가능한 Loosely Coupling 구조입니다.
- Self-Descriptive Messages
- API 메시지만 보고, API를 이해할 수 있는 구조입니다.
(Resource, Method를 이용해 무슨 행위를 하는지 직관적으로 이해할 수 있습니다)