본문 바로가기

Web

Restful API 설계 방법

HTTP API 설계 방법

  1. HTTP API는 설계시 항상 리소스 식별을 기준
  2. URI에 들어갈 리소스는 복수 형태 board → boards
  3. URL에 동사를 사용하지 않는다.
  4. HTTP Method의 역할을 URL에 포함하지 않는다.

Restful API : REST 기반으로 서비스 API를 구현한 것

REST : URI를 통해 자원(Resource)을 명시하고, HTTP Method(POST, GET, PUT, DELETE,PATCH 등)를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것

 

구현 규칙

  1. 리소스는 명사를 사용
  2. 복수 형태를 사용
  3. 만약, REST만으로 해결하기 어려운 경우라면 동사를 허용
  4. 자원의 계층 관계를 슬래시(/)로 표현
  5. 마지막 문자에는 슬래시(/)가 있으면 안된다.
  6. 하이픈(-)을 사용
  7. 소문자
  8. URI에 파일 확장자를 포함하면 안된다.
  9. CRUD 함수명은 사용하지 않고, HTTP Method를 활용
  10. 정렬, 필터링, 페이징은 신규 API를 만드는것이 아닌 Query Parameter를 사용
GET /users/123     // 특정 사용자 조회

POST /users        // 사용자 생성
{
    "name": "sparta",
    "password": "codingclub"
}

PUT /users/123     // 사용자 정보 수정
{
    "name": "java",
    "password": "spring"
}

DELETE /users/123  // 사용자 삭제