def decorated(*args, **kwargs): token = request.headers.get("Authorization", None) if not token: raise ValidationError( message="error", status_code=401, payload={"message": "No auth token"}, ) try: data = jwt.decode(token, current_app.config["SECRET_KEY"], algorithms=["HS256"]) controller = UserController() user = controller.find_one(email=data.get("email")) if not user: raise ValidationError( message="error", status_code=401, payload={"message": "Invalid token"}, ) request.user = user except Exception as error: raise ValidationError( message=str(error), status_code=401, payload={ "message": "AN error occurred when checking credential" }, ) return f(*args, **kwargs)
def decorated(*args, **kwargs): token = request.headers.get('Authorization', None) if not token: raise ValidationError(message='error', status_code=401, payload={'message': 'No auth token'}) try: data = jwt.decode(token, current_app.config['SECRET_KEY'], algorithms=['HS256']) controller = UserController() user = controller.find_one(email=data.get('email')) if not user: raise ValidationError(message='error', status_code=401, payload={'message': 'Invalid token'}) request.user = user except Exception as error: raise ValidationError( message=str(error), status_code=401, payload={ 'message': 'AN error occurred when checking credential' }) return f(*args, **kwargs)
def post(self): request_data = api.payload api.schema_model('User', {**user_login_schema}).validate(request_data) controller = UserController() user = controller.find_one(email=request_data.get('email')) if user and check_password_hash(user.password, request_data['password']): token = generate_token(user) return {'token': token, **user._asdict()}, 200 raise ValidationError(message='error', status_code=401, payload={'message': 'Invalid credentials'})
def post(self): user = api.payload api.schema_model('User', {**user_schema}).validate(user) user['password'] = generate_password_hash(user['password'], method='sha256') controller = UserController() if not controller.find_one(email=user.get('email')): user = controller.insert(user) return user, 201 raise ValidationError( message='error', status_code=400, payload={'message': 'User with email already exists'})
def post(self): request_data = api.payload api.schema_model("User", {**user_login_schema}).validate(request_data) controller = UserController() user = controller.find_one(email=request_data.get("email")) if user and check_password_hash(user.password, request_data["password"]): token = generate_token(user) return {"token": token, **user._asdict()}, 200 raise ValidationError( message="error", status_code=401, payload={"message": "Invalid credentials"}, )
def post(self): user = api.payload api.schema_model("User", {**user_schema}).validate(user) user["password"] = generate_password_hash(user["password"], method="sha256") controller = UserController() if not controller.find_one(email=user.get("email")): user = controller.insert(user) return user, 201 raise ValidationError( message="error", status_code=400, payload={"message": "User with email already exists"}, )