예제 #1
0
    def post(self, request):
        # 对加密的请求数据进行解密
        try:
            requestData = crypto_aes().decrypt_text(
                request.data["requestData"])
            requestData_obj = json.loads(requestData)
        except KeyError:
            return Response(response.CRYPTO_AES_ERROR)
        try:
            username = requestData_obj["username"]
            password = requestData_obj["password"]
            email = requestData_obj["email"]
        except KeyError:
            return Response(response.KEY_MISS)

        if models.UserInfo.objects.filter(username=username).first():
            return Response(response.REGISTER_USERNAME_EXIST)

        if models.UserInfo.objects.filter(email=email).first():
            return Response(response.REGISTER_EMAIL_EXIST)

        # 此处需要将解密后的用户名及邮箱,加密后的密码存到数据库表中
        requestData_obj["password"] = make_password(password)
        serializer = serializers.UserInfoSerializer(data=requestData_obj)

        if serializer.is_valid():
            serializer.save()
            return Response(response.REGISTER_SUCCESS)
        else:
            return Response(response.SYSTEM_ERROR)
예제 #2
0
    def post(self, request):

        try:
            username = request.data["username"]
            password = request.data["password"]
            email = request.data["email"]
        except KeyError:
            return Response(response.KEY_MISS)

        if models.UserInfo.objects.filter(username=username).first():
            return Response(response.REGISTER_USERNAME_EXIST)

        if models.UserInfo.objects.filter(email=email).first():
            return Response(response.REGISTER_EMAIL_EXIST)

        # 此处采用django自带的方法来加密
        request.data["password"] = make_password(password)

        print(type(request.data["password"]))
        serializer = serializers.UserInfoSerializer(data=request.data)
        print(type(serializer))
        print(serializer.is_valid())
        if serializer.is_valid():
            serializer.save()
            return Response(response.REGISTER_SUCCESS)
        else:
            return Response(response.SYSTEM_ERROR)