티스토리 뷰
이전에 JWT SECRET KEY를 분리하여 숨기는 (물론 github엔 settings.py자체가 올라가지 않았다) 과정을 했다.
이번에는 테스트를 위해 permission_classes([Allowany])로 버무려놓은 코드를 수정해보기로 했다.
Authentication이 로그인 여부 인증이라면
Permission은 Authorization, 즉 로그인한 사용자가 어디까지 서비스를 이용할 수 있는지에 대한 권한이다.
클래스 속성 또는 데코레이터를 통해 새 권한 클래스를 설정하면 settings.py 파일에 설정된 기본 목록을 무시하도록 뷰에 지시하는 것 입니다
기존 코드는 이렇게, 테스트를 원활하게 진행하기 위해 AllowAny로 설정했었다.
from rest_framework.decorators import permission_classes
from rest_framework.permissions import AllowAny
회원가입할때는 permission 을 AllowAny로 설정해주어야 한다.
왜냐하면 회원가입 한다는 것은 미로그인 상태라는 것이기 때문에 미로그인상태에서도 접근이 가능해야 하기 때문이다.
그외에도 프로젝트의 메인페이지에 나오는 모든 영화 read기능, 영화 검색기능은 로그인 없이도 가능하게 설정한다.
표로 나누어보았다.
로그인 필요x | 로그인 필요 |
@permission_classes([AllowAny])
|
@permission_classes([IsAuthenticated]) |
회원가입 로그인 메인페이지 영화 출력 영화 상세정보 영화 검색 |
프로필 마이페이지 영화 추천 영화 북마크 리뷰 리스트 가져오기 및 작성 -> 가져오기만 어떻게 분리하지? 특정 영화의 리뷰 보기 수정 및 삭제 -> 보기만 어떻게 분리하지? |
문제는 REST_API 형식으로 if문으로 GET과 POST 방식을 나누고 하나로 구현한 view함수를 어떻게 처리할지였다.
리뷰 리스트 보기와 특정 영화의 리뷰 보기는 읽기 기능이라 로그인 안해도 볼 수 있도록 하고싶은데, 수정삭제와 view함수가 묶여있어서 어떻게 처리해야할지 난감했다.
공식문서를 찾아보았다.
와우, 이걸 사용하면 GET은 리드온리로, 그 외 CREATE, PUT, DELETE는 로그인 승인이 필요한 상태로 view함수를 데코레이팅 할 수 있을 것 같다!!
변경된 표
로그인 필요 x | GET만 허용 | 로그인 필요 |
@permission_classes([AllowAny]) | @permission_classes([IsAuthenticatedOrReadOnly]) | @permission_classes([IsAuthenticated]) |
회원가입 로그인 메인페이지 영화 출력 영화 상세정보 영화 검색 |
프로필 마이페이지 리뷰리스트 보기 특정 영화의 리뷰 보기 팔로우 기능 |
영화 추천 영화 북마크 리뷰 작성, 수정 및 삭제 |
적용완료
'Django Framework' 카테고리의 다른 글
AttributeError: 'str' object has no attribute 'decode' (0) | 2021.12.17 |
---|---|
refresh token 사용시, 5분 후 로그아웃 되었을 때 프론트에서 로그아웃처리가 안되는 에러 (0) | 2021.12.16 |
Django JWT 설정 및 SECRET KEY 숨기기 (0) | 2021.12.15 |
Django 데이터베이스 SQLite3 에서 MySQL로 바꾸기 (0) | 2021.12.14 |
Django custom tags & builtin tags (0) | 2021.11.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 맥과윈도우로깃허브
- 클린코드
- 개발자책추천
- 개발자도서추천
- 코딩도서
- 싸피6기
- 임대차3법
- ssafy6기
- 폰트추천
- 개발도서추천
- 싸피
- 한글무료폰트추천
- intj여자
- 개발자커리
- 개발언어순위
- 폰트
- 개발자
- 깃허브계정2개
- ssafy후기
- 개발자로드맵
- SSAFY
- 깃허브계정
- 상업용무료폰트
- 디즈니얼굴
- 클린코더
- ssafy합격후기
- 무료폰트추천
- 개발언어추천
- 브왈라
- ssafy결과
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함