예제 #1
0
    def post(request):

        try:
            serializer = JSONWebTokenSerializer(data=request.data)
            if serializer.is_valid():
                serialized_data = serializer.validate(request.data)
                # from custom_logger import DatabaseCustomLogger
                # d = DatabaseCustomLogger()
                # d.database_logger(123)
                email = request.data.get('email')
                user = User.objects.get(email=email)
                # if not user.is_email_verified:
                #     return Response({
                #         'status': False,
                #         'data': "Email Verification is pending",
                #     }, status=status.HTTP_200_OK)
                user_serializer = UserListSerializer(user)
                return Response({
                    'status': True,
                    'token': serialized_data['token'],
                    'data': user_serializer.data,
                }, status=status.HTTP_200_OK)
            else:
                message = ''
                for error in serializer.errors.values():
                    message += " "
                    message += error[0]
                return Response({'status': False,
                                 'message': message},
                                status=status.HTTP_400_BAD_REQUEST)
        except (AttributeError, ObjectDoesNotExist):
            return Response({'status': False,
                             'message': "User doesnot exists"},
                            status=status.HTTP_400_BAD_REQUEST)
예제 #2
0
 def post(request):
     try:
         serializer = JSONWebTokenSerializer(data=request.data)
         if serializer.is_valid():
             serialized_data = serializer.validate(request.data)
             # from custom_logger import DatabaseCustomLogger
             # d = DatabaseCustomLogger()
             # d.database_logger(123)
             user = User.objects.get(email=request.data.get('email'))
             return Response(
                 {
                     'status': True,
                     'token': serialized_data['token'],
                 },
                 status=status.HTTP_200_OK)
         else:
             message = ''
             for error in serializer.errors.values():
                 message += " "
                 message += error[0]
             return Response({
                 'status': False,
                 'message': message
             },
                             status=status.HTTP_400_BAD_REQUEST)
     except (AttributeError, ObjectDoesNotExist):
         return Response({
             'status': False,
             'message': "User does not exist"
         },
                         status=status.HTTP_400_BAD_REQUEST)
예제 #3
0
    def post(request):
        try:
            serializer = JSONWebTokenSerializer(data=request.data)
            if serializer.is_valid():
                serializer_data = serializer.validate(request.data)

                user = CustomUser.objects.get(
                    username=request.data.get('username'))
                return Response(
                    {
                        'status': True,
                        'token': serializer_data['token']
                    },
                    status=status.HTTP_200_OK)
            else:
                message = ''
                for error in serializer.errors.values():
                    message += " "
                    message += error[0]
                return Response({
                    'status': False,
                    'message': message
                },
                                status=status.HTTP_400_BAD_REQUEST)
        except (AttributeError, ObjectDoesNotExist):
            return Response({
                'status': False,
                'message': 'User does not exist'
            },
                            status=status.HTTP_400_BAD_REQUEST)
예제 #4
0
def get_authenticated_user_client():
    client = APIClient()
    User.objects.create_user(email="*****@*****.**", password="******")
    serializer = JSONWebTokenSerializer()
    attrs = {
        'email': '*****@*****.**',
        'password': '******',
    }
    user_credential = serializer.validate(attrs)
    client.credentials(HTTP_AUTHORIZATION='Bearer ' + user_credential.get('token'))
    return client
예제 #5
0
파일: views.py 프로젝트: Smawei/tenpower
    def post(self, request):
        sms = request.data.pop('sms_code')
        redis_cli = get_redis_connection('sms')
        sms_code = redis_cli.get(request.data.get('mobile'))
        if sms_code.decode() != sms:
            return Response({'data': {'success': False, 'message': '验证码错误'}})
        serializer = UserSerializer(data=request.data)
        serializer.is_valid()
        user = serializer.save()
        serializer_jwt = JSONWebTokenSerializer(data=request.data)
        token = serializer_jwt.validate(request.data).get('token')
        data = jwt_response_payload_handler(token, user, request)

        return Response(data)
예제 #6
0
파일: views.py 프로젝트: pranavnkc/fastapp
 def post(request):
     serializer = JSONWebTokenSerializer(data=request.data)
     serializer.is_valid(raise_exception=True)
     serialized_data = serializer.validate(request.data)
     user_data = UserSerializer(
         User.objects.get(username=request.data['username'])).data
     if not user_data['groups']:
         return Response({'groups': "User not registered with any groups."},
                         status=status.HTTP_400_BAD_REQUEST)
     return Response(
         {
             'status': True,
             'token': serialized_data['token'],
             'user': user_data,
         },
         status=status.HTTP_200_OK)
예제 #7
0
def authenticate_user(client, user, admin_user=False, serializer_class=None):
    if admin_user:
        user.is_superuser = True
        user.save()

    serializer = JSONWebTokenSerializer()
    if serializer_class:
        serializer = serializer_class()

    attrs = {
        user.USERNAME_FIELD: user.get_username(),
        "password": "******",
    }
    user_credential = serializer.validate(attrs)
    client.credentials(HTTP_AUTHORIZATION="Bearer " +
                       user_credential.get("token"))
    return client
예제 #8
0
def create_auth(request):
    serialized = UserProfileSerializer(data=request.data)
    jwt = JSONWebTokenSerializer(data=request.data)
    data = jwt.is_valid()
    if serialized.is_valid():
        serialized.save()
        result = {
            "success": True,
            "sessionId": jwt.validate(request.data)["token"]
        }
        code = status.HTTP_201_CREATED
    else:
        code = status.HTTP_400_BAD_REQUEST
        result = {
            "success": False,
            "message": "Wrong request data",
            "details": str(serialized._errors),
            "code": code
        }
    return Response(result, status=code)