如何验证密码Django res

2024-10-06 12:13:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图制作一个rest应用程序来与我的android应用程序通信,但它阻止了我验证密码。在

我使用默认的django用户模型,我想让服务器验证密码

我发现了一些其他有趣的答案,但事实是django不是我的强项(我的专长是android),而且他们没有很好地解释如何在我看来实现它们

重新应用/视图.py在

class postRegister(APIView):

    def post(self,request):
        data = JSONParser().parse(request)
        cencripM=CriptoMovil(KEY_ENC_M)
        data['username'] = cencripM.decrypt(data['username'])
        data['email'] = cencripM.decrypt(data['email'])
        data['password'] = cencripM.decrypt(data['password'])
        serializer = RegistSerializer(data=data)
        if serializer.is_valid():
            serializer.save()
            return Response({"message":"save","state":"1"})
        return Response({"message":serializer.errors,"state":"2"})

也许这对我发现的一些文章有帮助,但我不知道如何在视图中实现它们(我重复一下,我的专长是android)

many options but I did not know how to implement

interesting but I did not understand how to implement the view


Tags: django视图应用程序密码dataemailrequestsave
1条回答
网友
1楼 · 发布于 2024-10-06 12:13:45

开始时,您不需要编写客户序列化程序进行验证,而是可以按照令牌基身份验证在android中进行验证,如下所示:

网址.py

from rest_framework.authtoken.views import ObtainAuthToken

urlpatterns +=[
    url(r'^api-token-auth/', ObtainAuthToken.as_view(), name='get_auth_token')
]

现在您可以在/api-token-auth/上发布用户名和密码,如果它是有效的,您将获得响应中的令牌,响应状态将为200 OK

如果需要自定义响应,则需要重写的post方法 ObtainAuthToken如下:

^{pr2}$

现在在urls.py中,您需要使用 CustomAuthentication.as_view()

有关其他设置详细信息,请阅读this线程

相关问题 更多 >