Пример #1
0
    def post(self):
        data = loginParser.parse_args()
        current_user = User.find_by_email(data['email'])
        if not current_user:
            return {
                'message': 'User email {} doesn\'t exist'.format(data['email'])
            }

        if bcrypt.check_password_hash(current_user.password, data['password']):
            access_token = create_access_token(identity=data['email'])
            refresh_token = create_refresh_token(identity=data['email'])
            return {
                'message': 'Logged in as {}'.format(current_user.email),
                'access_token': access_token,
                'refresh_token': refresh_token
            }
        else:
            return {'message': 'Wrong credentials'}
Пример #2
0
    def post(self):
        data = registParser.parse_args()

        if User.find_by_email(data['email']):
            return {
                'message': 'User email {} already exists'.format(data['email'])
            }

        new_user = User(name=data['name'],
                        email=data['email'],
                        password=bcrypt.generate_password_hash(
                            data['password']).decode('utf-8'),
                        city=data['city'])
        try:
            new_user.save_to_db()
            access_token = create_access_token(identity=data['email'])
            refresh_token = create_refresh_token(identity=data['email'])
            return {
                'message': 'User email {} created'.format(data['email']),
                'access_token': access_token,
                'refresh_token': refresh_token,
            }
        except:
            return {'message': 'Something went wrong.'}, 500