인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

joshua seo님의 프로필 이미지
joshua seo

작성한 질문수

스프링 기반 REST API 개발

평범한 CRUD이외의 작업을 위한 API는 어떻게 Restful하게 만들 수 있을까요?

작성

·

594

0

현업에서 REST API를 만들고 있는 개발자입니다.

짧은 지식으로는 Restful한 API는 URI에는 자원을 가리키는 "명사"만 들어가야 하고,

해당 자원에 대한 작업은 HTTP Method로 표현될 수 있는 "동사"를 사용해야 한다고 하는데요.

실제로 현업에서 만드는 API는 단순한 CRUD의 범주에 들어가기 힘든 경우가 있어서요.

강좌에서 사용한 Events를 예로 설명하자면, 이벤트의 STATUS를 바꿀때 특정 권한자의 승인등을 수행하는 API의 경우엔 어떤식으로 디자인하는게 Restful한것인지 알고싶습니다.

기존에는 /api/events/{id}/approve 등으로 했었는데, 이러면 Restful한 것 같지가 않아서요.

답변 1

0

백기선님의 프로필 이미지
백기선
지식공유자

GET, PUT, DELETE 등에 어울리지 않는 액션이 많을텐데 그 경우에는 POST를 범용적으로 활용하실 수 있습니다.

https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md

깃헙의 REST API나 이런 문서를 한번 참고하시는 것도 좋을거 같네요.

joshua seo님의 프로필 이미지
joshua seo

작성한 질문수

질문하기