본문 바로가기

이론/JSP&Spring&등등 이론

Restful API 개발지침

RestfulAPI


이름짓기

  • 리소스 기준

  • 명사만 사용

  • 동사는 Method를 이용한다.

  • 복수 네이밍을 권장(user -> users)

POST /users: 유저 추가
GET /users: 유저 목록 조회
GET /users/:id: 유저 1개 조회
PUT /users/:id: 유저 1개 수정
DELETE /users/:id: 유저 1개 삭제

상태코드

2xx: 성공

  • 200: OK(서버가 요청을 제대로 처리함/ 요청한 페이지 제공)

  • 201: Created

  • 204: No Content(리소스 삭제시)

  • 205: Reset Content(요청처리 후 문서 뷰를 리셋하라고 전달)

3xx: 리다이렉션

  • 301: Moved Permanently(요청한 리소스의 URI 변경. 새로운 리다이렉션 주소 전송)

4xx: 클라이언트 오류

  • 401: Unauthrized(인증되지 않은 요청)

  • 403: For bidden(인증 시 로그인 정보가 일치하지 않을 경우)

  • 404: Not Found(없는 페이지 or 없는 리소스)

  • 409: Conflict(기존 리소스와 중복)

5xx: 서버에러

  • 500을 헤더에 넣고, 자세한 정보는 바디에 담아 응답

데이터 가공

  • query: 검색어

  • offset, limit: 페이지네이션

  • sort: 정렬

  • fields: 필드값

버저닝

  • 버전관리는 GET v1/users -> GET v2/users 방식으로 관리한다.

출처) http://blog.jeonghwan.net/2016/03/29/mobile-rest-api.html