REST(Representational state transfer)

규칙

REST API 중심 규칙

URI은 정보의 자원을 표현해야 한다 (리소스명은 동사보다는 명사를 사용한다)

예를들어 todo 예제에서 1번 card를 삭제한다고 생각해보자.

GET /cards/delete/1

이 방법은 좋지않은 방법이다. URI은 정보의 자원만을 표현해야 하는데 delete 과 같은 불필요한 표현이 들어가있다. 아래와 같이 DELETE 이라는 HTTP Method 와 URI 만으로 충분이 1번 카드를 삭제한다 라는 뜻을 표현할 수 있다. 즉 아래와 같은 형식으로 표현되는게 누구에게도 직관적으로 보일 수 있다.

DELETE /cards/1
DELETE /items/{itemId}

자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE) 로 표현한다.

# 카드 정보 가져오기
GET /cards/show/1 (X)
GET /cards/1      (O)

# 카드 추가하기
GET /cards/add/2 (X) - GET method 는 리소스 생성과 맞지 않다.
POST /cards      (O)

URI 설계 시 주의점

슬래시 구분자(/) 는 계층 관계를 나타낼 때 사용

<http://abc.com/animals/dogs>
<http://todo.com/cards/10/comments>
<http://todo.com/cards/10/comments/5>