Payload 커스텀

  • JWT Payload에 모델에서 작성한 필드를 추가하기

 

https://django-rest-framework-simplejwt.readthedocs.io/en/latest/customizing_token_claims.html

 

(app-views.py)

from users.serializers import CustomTokenObtainPairSerializer
from rest_framework_simplejwt.views import TokenObtainPairView

class CustomTokenObtainPairView(TokenObtainPairView):
    serializer_class = CustomTokenObtainPairSerializer

 

 

(app-serializers.py)

class CustomTokenObtainPairSerializer(TokenObtainPairSerializer):
    @classmethod
    def get_token(cls, user):
        token = super().get_token(user)
        token['email'] = user.email
        token['bio'] = user.bio
        token['name'] = user.name
        token['age'] = user.age
        token['gender'] = user.gender

        return token

 

 

(app-urls.py) 수정하기

urlpatterns = [
    path('api/token/', views.CustomTokenObtainPairView.as_view(), name='token_obtain_pair'),
]

 

'Python > Django' 카테고리의 다른 글

[DRF] 09. 스태틱, 미디어 폴더 세팅  (0) 2023.04.26
[DRF] 08.5 토큰 주기설정, permission  (0) 2023.04.26
[DRF] 07. 유저 API  (0) 2023.04.26
[DRF] 06.5 admin 커스텀  (0) 2023.04.25
[DRF] 06. User / UserManager  (0) 2023.04.24

+ Recent posts