def post(self): data = parserLogin.parse_args() email = data['Email'] password = data['Password'] if email == '' or password == '': return {'message': Constant.EMPTY_FIELDS}, 400 currentUser = UserModel.find_by_Email(email) #El resultado que devuelve la clase se analiza y compara con la condicional if, #si es false, retorna un mensaje de una cuenta inexistente if not currentUser: return {'message': Constant.THE_NON_EXISTING_USER}, 404 #La siguiente sentencia compara la contraseña obtenida con la contraseña del usuario #que intenta acceder usando el método de clase verify_hash if UserModel.verify_hash(password, currentUser[0]['Password']): accessToken = create_access_token(identity=currentUser[0]['Id']) refreshToken = create_refresh_token(identity=currentUser[0]['Id']) #Se devuelve los datos correspondientes del usuario, así como los tokens del currentUser[0]['Password'] return { 'token': accessToken, 'user': currentUser[0], 'refreshToken': refreshToken }, 200 else: return {'message': Constant.WRONG_CREDENTIALS}, 400
def post(self): data = parserLogin.parse_args() currentUser = UserModel.find_by_Email(data['email']) #El resultado que devuelve la clase se analiza y compara con la condicional if, #si es false, retorna un mensaje de una cuenta inexistente if not currentUser: return { 'message': 'The user with the mail {} doesn\'t exist'.format(data['email']) } #La siguiente sentencia compara la contraseña obtenida con la contraseña del usuario #que intenta acceder usando el método de clase verify_hash if UserModel.verify_hash(data['password'], currentUser[0]['Password']): accessToken = create_access_token(identity = currentUser[0]['Email']) refreshToken = create_refresh_token(identity = currentUser[0]['Email']) #Se devuelve los datos correspondientes del usuario, así como los tokens return { 'token': accessToken, 'user' :{ 'email': currentUser[0]['Email'], 'name': currentUser[0]['Name'], 'username': currentUser[0]['Username'], '_id': currentUser[0]['Id'] }, 'refreshToken': refreshToken, 'message': 'Logged in as {}'.format(currentUser[0]['Username']) }, 200 else: return {'message': 'Wrong credentials'}
def post(self): data = parserRegistration.parse_args() email = data['Email'] password = data['Password'] user = data['Name'] if email == '' or password == '': return {'message': Constant.EMPTY_FIELDS}, 400 #El resultado que devuelve la clase se analiza y compara con la condicional if, si es true, #retorna un mensaje de un correo existente if UserModel.find_by_Email(email): return {'message': Constant.EXISTING_RECORD.format(email)}, 400 #Convierte a un objeto json la data proveniente de los argumentos e inicia el #método para crear el nuevo registro creteJsonObject = Format() newData = creteJsonObject.dumps_and_loads(data) newUser = UserModel(**newData) #El manejador de excepciones mostrará un mensaje de que un usuario ha sido creado, por lo #contrario, mostrará que algo ha salido mal try: Id = newUser.create_user() return { 'message': Constant.RECORD_CREATED.format(user, email), 'token': create_access_token(identity=Id), 'refreshToken': create_refresh_token(identity=Id) }, 200 except: return {'message': Constant.BAD_REQUEST}, 500
def post(self): data = parserRegistration.parse_args() #El resultado que devuelve la clase se analiza y compara con la condicional if, si es true, #retorna un mensaje de un correo existente if UserModel.find_by_Email(data['email']): return { 'message': 'The user with the mail {} already exists'.format(data['email']) } #Se crea un objeto de un nuevo usuario newUser = UserModel( id = UserModel.generate_id(), email = data['email'], username = data['username'], password = UserModel.generate_hash(data['password']), name = data['name'] ) #Se crean tokens de acceso y de refresh con el email accessToken = create_access_token(identity = data['email']) refreshToken = create_refresh_token(identity = data['email']) #El manejador de excepciones mostrará un mensaje de que un usuario ha sido creado, por lo #contrario, mostrará que algo ha salido mal try: newUser.create_user() return { 'message': 'User {} was created'.format(data['email']), 'token': accessToken, 'refreshToken': refreshToken, } except: return {'message': 'Something went wrong'}, 500