#1
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.SessionAuthentication',
'dj_rest_auth.jwt_auth.JWTCookieAuthentication',
'rest_framework_simplejwt.authentication.JWTAuthentication',
)
}
#2
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
"dj_rest_auth.jwt_auth.JWTCookieAuthentication",
"rest_framework.authentication.SessionAuthentication",
),
}
settings.py에서 #2과 같이 설정을 했을 때는 signup시에도
"detail": "자격 인증데이터(authentication credentials)가 제공되지 않았습니다."
과 같은 401에러가 떴음
DEFAULT_PERMISSION_CLASSES 설정에 있는 IsAuthenticated 권한 클래스가 인증된 사용자만 엔드포인트에 접근할 수 있게 하기 때문
따라서 인증되지 않은 상태에서 signup을 시도하면 401 Unauthorized 오류가 발생
저 IsAuthenticated부분을 AllowAny로 변경하거나 1번처럼 아예 없애주고 각 view에서 커스텀퍼미션 등 권한을 설정해주면 되었다.
'내일배움캠프 > 내일배움캠프 TIL' 카테고리의 다른 글
내일배움캠프 TIL 68일차 - 코드 개선하기 (리액트, url통일의 중요성) (0) | 2023.06.16 |
---|---|
내일배움캠프 TIL 67일차 - 테스트코드 다중이미지 업로드 (2) | 2023.06.13 |
내일배움캠프 65일차 TIL - 리액트로 프론트 구현하기 (1) | 2023.06.11 |
내일배움캠프 64일차 TIL - 카카오 로그인.. (0) | 2023.06.11 |
내일배움캠프 63일차 TIL - 테스트코드 에러 (0) | 2023.06.11 |