RESTful API
REST(Representational State Transfer)
Http Method
CRUD(Create, Read, Update, Delete)에 해당되는 Method
- GET : Read
- POST : Create
- PUT : Update
- DELETE : Delete
REST의 특징
- Uniform Interface
- HTTP 표준만 만족시기면 어떠한 기술을 사용하던 가능한 인터페이스 스타일
- Stateless
- 상태를 유지 않는 특성
- 들어오는 요청만 메시지를 처리하면 되기 때문에 구현이 단순해 진다.
- Cacheable
- 웹 표준을 그대로 사용하기 때문에 캐시를 사용할수 있다.
- Self-descriptiveness
- API 메시지 자체만 보고 API가 이해가 쉽다.
- Client-Server 구조
리소스의 표현 방법
- GET /dogs
- GET /dogs/1234
- POST /dogs
- PUT /dogs/1234
- DELETE /dogs/1234
리소스의 관계를 표현하는 방법
- GET /users/{userName}/dogs/{dogName}
- /user/inho/dogs/william
- inho에 속해있는 william이라는 개를 가지고 온다.
- GET /users/{userName}/likes/dogs/{dogName}
- /user/inho/likes/dogs/william
- inho가 좋아하는 william이라는 개를 가지고 온다
에러 처리
- 20x : 성공
- 40x : Request Error
- 50x : Server Error
버전 관리
- GET /v1/dogs/1234
- GET /v2/dogs/1234
'Programing' 카테고리의 다른 글
Cache (0) | 2018.11.20 |
---|---|
SOLID 개발 원칙 (0) | 2018.11.16 |
Event Sourcing (0) | 2018.10.16 |
Actor Model (0) | 2018.10.02 |
Observer Pattern (0) | 2018.09.30 |