예제 #1
0
    def post(self):
        data = _user_parser.parse_args()

        if UserModel.find_by_name(data['name']):
            return {"message": "A user with that name already exists"}, 400

        user = UserModel(**data)
        user.save_to_db()

        return {"message": "User created successfully."}, 201
예제 #2
0
    def post(self):
        data = _user_parser.parse_args()

        user = UserModel.find_by_name(data['name'])

        # this is what the `authenticate()` function did in security.py
        if user and safe_str_cmp(user.password, data['password']):
            # identity= is what the identity() function did in security.py—now stored in the JWT
            access_token = create_access_token(identity=user.id, fresh=True)
            refresh_token = create_refresh_token(user.id)
            return {
                'access_token': access_token,
                'refresh_token': refresh_token
            }, 200

        return {"message": "Invalid Credentials!"}, 401