1

嗨,我正在玩djangodjangorestframework-simplejwt编写了一个简单的应用程序来注册用户。现在看来,通过阅读文档和在线搜索,生成令牌的唯一方法是将用户名和密码传递给 url url(r'^api/token/$', TokenObtainPairView.as_view(), name='token_obtain_pair')。所以看来我必须先创建用户,然后在成功创建用户后将用户名和密码再次发送到 url 以生成令牌。但是我希望能够在创建用户时创建一个令牌,而不必在创建用户后重新发送用户名和密码。注册用户时是否更容易生成 jwt。

4

1 回答 1

0

是的,您可以使用 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),
    }
    ...
于 2019-02-02T05:32:13.337 回答