Кросс-домен Flask не работает вместе с пространством имен - PullRequest
0 голосов
/ 27 февраля 2019

После импорта и CORS из flask_cors я получаю флеш-сервер для поддержки запросов от localhost.Но только если запрос находится под api.route.

Для любой цели в пространстве имен я получаю Доступ к выборке в 'http://127.0.0.1:5151/api/hello2' из источника' http://localhost:3000' заблокировано политикой CORS

app.py

app = Flask(__name__)
CORS(app, resources={r"/*": {"origins":"*"}})
...
...
def initialize_app(flask_app):
"""
Register blueprints and append all namespaces
"""
    blueprint = Blueprint('api', __name__, url_prefix='/api')
    api.init_app(blueprint)
    api.add_namespace(hello_namespace)

    flask_app.register_blueprint(blueprint)

restplus.py

api = Api(version='1.0', title='API', description='API ...')

@api.route('/hello')
class HelloWorld(Resource):            
    def get(self):                     
        return {'hello': 'world from API'}

Namespace.py

ns = api.namespace('hello2', description='Hello endpoints')

@ns.route('/')
@api.doc(responses={404: 'Failed to connect'}, description='List all')
class HelloList(Resource):
    def get(self):
        return [{'hello': 'world from API'}]

Получить данные из http://127.0.0.1:5151/api/hello работ.http://127.0.0.1:5151/api/hello2 выдает ошибку.

Пожалуйста, укажите мне правильное направление.

1 Ответ

0 голосов
/ 27 февраля 2019

corydolphin прокомментировал 18 марта 2016 г. https://github.com/corydolphin/flask-cors/issues/128#issuecomment-198453999

"Я ожидаю, что происходит, когда Flask молча перенаправляет с 'foo' на 'foo /'. Flask делает это автоматически. "

Добавлен слеш, добавив косую черту в запрос на стороне клиента.http://127.0.0.1:5151/api/hello2/ теперь работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...