10cheon00 / drf-practice

0 stars 0 forks source link

토큰인증을 하여 로그인, 게시글 등록을 만들었다...만 코드가 너무 더럽다! #12

Closed 10cheon00 closed 3 years ago

10cheon00 commented 3 years ago

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

headers: {
    Authorization: 'Bearer' + token
}

이 방법으로 보내면 된다!

Todo

axios api를 더 편하게 쓰기 위해 믹스인을 활용하고 있는데, 그다지 효과가 없는 것 같다. 어떻게 활용해야할까?