728x90
반응형

RESTful API는 설계부터 잘 해놔야 team member와 사용자가 잘 사용할 수 있다.

API는 CRUD (Create, Read, Update, Delete) 를 위해 활용된다.

CRUD


이때 API가 필요한 URL을 모두 만들고 싶겠지만 이렇게 하면 URL이 너무 많아지고 복잡해질 뿐만 아니라 협업 구성원이 해당 URL을 이해하기 어려울 것이므로 좋은 설계가 아니다.
그러므로 convention에 따라 적절한 URL을 설계해야 한다.

  • 동사 사용 금지
    ex. /create, /see, /get, /edit, /delete, /update, /find
  • collection (복수) 과 unique identifer를 활용해 두 종류의 URL 생성
    ex. /movies, /movies/inception
    ᅠᅠᅠㄴ movies : collection, inception : unique identifier

동사 사용금지

이렇게 하고 나서 HTTP request methods와 결합하자.
ex. GET/POST/PUT/DELETE + /movies/(unique identifier)
이 방식의 URL이 더 간결하고 API의 구조를 이해하기에도 더 직관적이다.

 

객체들의 관계 interaction을 위해 URL을 사용할 수도 있다.
ex. GET/POST/PUT/DELETE + /movies/inception/actors

GET으로 읽고,

POST으로 생성하고,

PUT으로 업데이트하고,

DELETE로 삭제!

 

검색이나 filter를 처리하기 위해서는 매번 URL을 새롭게 만드는 것보다 query parameters를 활용하는 게 낫다.
ex. /getTopRatedMovies  /movies?main_rating=9.8
ᅠᅠᅠ/findMoviesFromThisYear  /movies?release_date=2021
이렇게 query parameters를 활용하면 pagination도 할 수 있다.
ex. /movies?page=5

728x90
반응형

+ Recent posts