먼저 나는 지금까지 django를 설계하면서 API(라고도 하기 뭐 하지만 url이다.)를 아래와 같이 작성해왔다.
/read-member-list
/read-member-by-id
/create-member
/update-member
/delete-member
이렇게 짜면 단점이 나중에 가서 유지보수를 할 때나 내가 했던 프로젝트들을 복기할 때, 도대체 이게 무슨 코드인가 하고 나도 모를수도 있다는 점이었다. 이것은 쉽게말해 RESTful 하지 못하다.
RESTful API란?
RESTful API란 무엇인가? - RESTful API 초보자 가이드 - AWS (amazon.com)
RESTful API란 무엇인가? - RESTful API 초보자 가이드 - AWS
Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다. API Gateway를 사용하면 실시간 양방향 통신 애
aws.amazon.com
5분만에 제대로 설계하는 ⭐️ REST API - YouTube
나는 해당 자료들을 보고 이해했다.
/members - 회원목록 조회
/member/{id} - 회원 조회
/member/{id} - 회원 등록
/member/{id} - 회원 수정
/member/{id} - 회원 삭제
이런식으로 API가 설계 가능하다.
이걸 도대체 어떻게 분간하냐? 하면은
GET 일때는 조회, POST 일때는 등록, PUT,PATCH 일때는 수정, DELETE 일때는 삭제 이런식으로 API 설계를 하는 것이다.
class UserView(APIView):
def get(self, request, article_id): #조회
pass
def post(self, request, article_id): # 등록
pass
def put(self, request, article_id): #수정
pass
def delete(self, request, article_id): # 삭제
pass
view를 지금까지 사용해왔던 함수형 view가 아니라 위와 같이 class형 view로 작성해 주고, 메소드에 맞는 코드들을 작성해 주면 된다.
아직까지는 class형 view에도 익숙하지 않고, RESTful API라는것도 잘 와닿지는 않지만, 많이 연습해서 실력을 늘려야겠다.
'WIL' 카테고리의 다른 글
11주차 WIL (0) | 2022.11.13 |
---|---|
10주차 WIL (0) | 2022.11.07 |
8주차 WIL (장고 비밀번호 유효성 검사) (0) | 2022.10.24 |
7주차 WIL (0) | 2022.10.17 |
6주차 WIL (장고 CRUD) (0) | 2022.10.10 |