如何在django rest框架中使用jwt身份验证获取用户详细信息?

时间:2016-12-29 06:37:19

标签: python django jwt

我正在尝试使用JWT令牌身份验证来获取用户详细信息。我能够使用BasicAuthentication和JsonWebToken身份验证来获取它们。我正在尝试使用JWT获取详细信息。

class PermissionView(APIView):
    permission_classes = [IsAuthenticated]
    authentication_classes = [BasicAuthentication,JSONWebTokenAuthentication]

    def get(self, request,format=None):
        data = {
            'username': request.user.username,
            'password':request.user.password,

        }
        return Response(data)

网址:

url(r'^api-token/$', obtain_jwt_token),

输出: 1)生成令牌

2)使用基本身份验证和JsonWebTokenauthentication获取用户详细信息

我正在尝试使用JWT令牌获取用户详细信息或验证用户详细信息。帮助将不胜感激?

1 个答案:

答案 0 :(得分:-1)

让我们在Django流程中重新审视JWT,以了解一些事情:

  1. 用户使用他的用户名和密码从url api-token-auth请求令牌。
  2. jwt对用户进行身份验证并返回一个令牌供您随后使用(这是由JWT框架为我们完成的)
  3. 接下来,当您发送令牌时,JWT身份验证类将为您验证令牌,并使用您想要的用户信息填充请求,以便您以后可以在视图中使用它们。
  4. 结论:您会在请求对象中找到当前正在请求您的API的用户request.user