Генерация jwt при регистрации пользователя с использованием djangorestfrfamework-simplejwt - PullRequest
0 голосов
/ 02 февраля 2019

Привет, я играю с django и djangorestframework-simplejwt и написал простое приложение для регистрации пользователей.Теперь, прочитав документацию и выполнив поиск в Интернете, кажется, что единственный способ создать токен - передать имя пользователя и пароль по URL url(r'^api/token/$', TokenObtainPairView.as_view(), name='token_obtain_pair').Таким образом, мне кажется, что сначала нужно создать пользователя, а после успешного создания пользователя затем отправить имя пользователя и пароль снова на URL, чтобы сгенерировать токен.Но я хочу иметь возможность создавать токен при создании пользователя, и мне не нужно повторно отправлять имя пользователя и пароль после создания пользователя.Есть ли проще создать JWT при регистрации пользователя.

1 Ответ

0 голосов
/ 02 февраля 2019

Да, вы можете сделать это с RefreshToken.Вот как ...

from rest_framework_simplejwt.tokens import RefreshToken
from django.utils.six import text_type

def somewhere_in_signup_view:
    ...
    refresh = RefreshToken.for_user(user)
    tokens = {
        'refresh_token': text_type(refresh),
        'access_token': text_type(refresh.access_token),
    }
    ...
...