본문 바로가기

Backend/REST API

출근길에 읽은 IT) REST API 설계 정리(노마드코더)

REST API에 대해 본론부터 들어가자면, 

 

REST API 설계시 피해야 할 사항 

ex) /seeMovies, /getMovie/inception, /deleteMovie/inception과 같이

add,edit,delete 같은 단어를 쓰지 않는다. (동사 X) 

URL에서 다 삭제해야 한다. 

 

REST API 설계시 좋은 예시 

/Movies 

/Movie/inception 

/Movie/Titanic 

/TopRatedMovies

/MoivesFromThisYear 

-> 갖게되는건 명사뿐! 

 

복수형, Collection 

Movies -> /movies 

영화 컬렉션 목록에서 인셉션만 뽑는다면 -> /movies/inception 

 

URL 만들기

ex) /movies+고유 식별자로 URL 생성 + HTTP Methods(GET,PUT,UPDATE,DELETE) 

ex) DELETE /movies/inception 

 

만약, 인셉션에 나온 영화배우들을 읽고 싶다면? 

GET /movies/inception/actors 로 URL 요청을 보내면 된다. 

 

pagination 

query parameter을 활용하면 API에 pagination 추가 가능 

ex) /movies?page=5

 

주의점 

유튜브 댓글에서 봤는데, 좋은 댓글인 것 같아 참고한다. 

처음 API를 만드는 사람은 동사를 써서 만들고 싶은 욕구가 굉장히 클 것이다. 

하지만 창작자의 의도를 알기 쉬운(=동사를 쓰는) URL은 해킹의 위험도가 올라가기 때문에 URL을 명사를 위주로 만들어야 한다. 

-> 니꼬쌤의 말대로 메소드를 활용해서 명사에 의미를 더해야 한다. 

'Backend > REST API' 카테고리의 다른 글

REST API와 CRUD 차이점  (0) 2023.03.17
Endpoint 엔드포인트 그게 몬데  (0) 2023.03.02
REST API 규칙  (0) 2023.02.14
@Controller와 @RestController의 차이점  (0) 2023.02.07
@GetMapping 적용해보기 (with @RestController)  (0) 2023.02.07