REST Api
Re presentational S tate T ransfer
REST의 기본 원칙을 지킨 서비스 디자인을 RESTful 이라고 표현함
중심 규칙
- URI는 자원을 표현하는데에 집중한다.
- 행위에 대한 정의는 HTTP Method로 표현한다.
#Bad
GET /board/show?no=1 첫번째 게시물 조회
POST /board/modify?no=1 첫번째 게시물 수정
POST /board/delete?no=2 두번째 게시물 삭제
#Good
GET /boards 전체 게시물 조회
GET /boards/1 첫번째 게시물 조회
POST /boards 게시물 생성
PUT /boards/2 두번째 게시물 수정
DELTE /boards/2 두번째 게시물 삭제
Http Method
Method |
행위 |
역할 |
Payload |
GET |
READ |
모든/특정 리소스를 조회 |
X |
POST |
CREATE |
리소스를 생성 |
O |
PUT |
UPDATE |
리소스 전체를 수정 |
O |
PATCH |
UPDATE |
리소스 일부를 수정 |
O |
DELETE |
DELETE |
모든/특정 리소스를 삭제 |
X |
구성
자원(Resources), 행위(Verb), 표현(Representations) 세가지의 요소로 구성되며, REST는 자체 표현 구조(Self-descriptiveness)로 구성되어 REST API 만으로 요청을 이해할 수 있어야한다.
구성요소 |
표현방법 |
|
자원(Resources) |
URI |
|
행위(Verb) |
HTTP Method |
|
표현(Representations) |
Http Message Payload |
|
GET http://localhost/users/1 첫번째 유저를 조회한다
POST http://localhost/users 유저를 생성한다
DELETE http://localhost/users/1 첫번째 유저를 삭제한다.
PATCH http://localhost/users/1 첫번째 유저의 정보를 일부만 수정한다.
PUT http://localhost/users/1 첫번째 유저의 정보를 전체 수정한다.