首页 > 解决方案 > 如何使用 django rest 框架对用户进行身份验证

问题描述

我正在尝试authenticate使用django rest 框架并在下面导入的用户,但由于某种原因,当我检查前端时,authenticate我不断得到结果,我指的是下面的变量:nullreactJSlogged_in_used

from django.contrib.auth import authenticate

...

if request.method == "POST":
        username = request.data.get('username')
        password = request.data.get('password')

        get_user = User.objects.get(username=username)
        logged_in_used = authenticate(username=get_user.username, password=get_user.check_password(password))

         ...
         # data with token dictionnary
         ...

         result = (data_with_token, logged_in_used, status.HTTP_200_OK)

我在这里做错了什么吗?

标签: javascriptpythonreactjspython-3.xdjango

解决方案


像这样试试

from django.contrib.auth import authenticate, login

...

if request.method == "POST":
    username = request.POST['username']
    password = request.POST['password']

    logged_user = authenticate(request, username=username, password=password)

    if logged_user is not None:
        login(request, logged_user)

从这里你可以重定向或其他任何东西:)


推荐阅读