Closed 10cheon00 closed 3 years ago
IsAuthenticated는 인증을 받아야지만 권한이 주어지는 것이지만, IsAuthenticatedOrReadOnly는 인증을 받지 않은 상태에서는 읽기만 가능한 상태로 된다.
IsAuthenticated
IsAuthenticatedOrReadOnly
local.py에서 'rest_framework_simplejwt.authentication.JWTAuthentication',로 설정했었으니 기본은 이걸로 되어있다. Viewset에서 따로 정의를 하지 않아도 되겠지만, 이전 코드에서 잘못된 부분으로 되어있어 고쳤다.
'rest_framework_simplejwt.authentication.JWTAuthentication',
https://github.com/10cheon00/RESTful-blog/blob/eb744e5b9259fe8637c303776f72c9a47baba2e0/blog_project/frontend/src/components/CreateArticle.vue#L47-L59 이 방법으로 교체했다. 헤더와 데이터를 명시해 보내기 때문에 더 낫다고 생각한다. 편의를 위해 axios.delete().then()...방법처럼 http action을 method이름으로 쓰는 방법이 있지만 바꾸기로 했다.
axios.delete().then()...
headers: { Authorization: 'Bearer' + token }
이 방법으로 보내면 된다!
axios api를 더 편하게 쓰기 위해 믹스인을 활용하고 있는데, 그다지 효과가 없는 것 같다. 어떻게 활용해야할까?
Settings 재설정
DEFAULT_PERMISSION_CLASSES
IsAuthenticated
는 인증을 받아야지만 권한이 주어지는 것이지만,IsAuthenticatedOrReadOnly
는 인증을 받지 않은 상태에서는 읽기만 가능한 상태로 된다.Viewset.authentication_classes
local.py에서
'rest_framework_simplejwt.authentication.JWTAuthentication',
로 설정했었으니 기본은 이걸로 되어있다. Viewset에서 따로 정의를 하지 않아도 되겠지만, 이전 코드에서 잘못된 부분으로 되어있어 고쳤다.Axios Request
Request method
https://github.com/10cheon00/RESTful-blog/blob/eb744e5b9259fe8637c303776f72c9a47baba2e0/blog_project/frontend/src/components/CreateArticle.vue#L47-L59 이 방법으로 교체했다. 헤더와 데이터를 명시해 보내기 때문에 더 낫다고 생각한다. 편의를 위해
axios.delete().then()...
방법처럼 http action을 method이름으로 쓰는 방법이 있지만 바꾸기로 했다.Send token in header
이 방법으로 보내면 된다!
Todo
axios api를 더 편하게 쓰기 위해 믹스인을 활용하고 있는데, 그다지 효과가 없는 것 같다. 어떻게 활용해야할까?