이미 구성해본 경험이 있지만, 이번에는 아예 REST 를 만드는 프레임워크를 사용할 것이니 최종적으로 정리하자.
(https://darrengwon.tistory.com/135)
(https://darrengwon.tistory.com/312)
🚀 동사사용 금지.
/get_user, /deleteMovie => 좋지 않다.
🚀 복수 명사 활용
/user 는 /users로
🚀 폴더를 관리하는 것처럼 url 설계
/collections/elements1/elements2 + HTTP method
🚀 ? 활용하기
/movies/now_showing과 같이 바리에이션을 표현하기 위해 url을 파는 건 좋지 않다. ?를 활용하자
/movies?status=now_showing
/movies?status=coming_soon
🚀 version
rest api를 업데이트 했다고 해보자.
버전은 최 상단에 위치하는 것이 좋다.
/v1/movies
🚀 paging (limit/offset)
데이터가 많으면 자연스레 페이징을 구현해야 한다.
/v1/movies?limit=25&offset=100
🚀 fields
결과물에서 특정 필드만 보고 싶다면...
/movies/the-godfather?fields=id,title
🚀 http message
2xx : OK
200 성공적으로 가져옴 GET
201 성공적으로 추가함 POST
204 성공적으로 지워졌음 DELETE
4xx : you mess up
400 요청이 잘못됨. 쿼리에 문자열을 줬다던가, 안 줬던가(undefined)
404 잘못된 페이지. 없는 정보를 찾은 경우
409 중복(Conflict)입니다. POST
5xx : My faults
500 서버 에러
'Django, Flask > 🔫 Django REST framework (DRF)' 카테고리의 다른 글
DRF ViewSet : ModelViewSet로 ViewSet 맛보기 (0) | 2020.06.16 |
---|---|
pagination (0) | 2020.06.16 |
DRF class based view : GenericView (0) | 2020.06.16 |
DRF serializers를 통해 장고 객체를 json으로 만들기 (1) | 2020.06.16 |