Python Flask - Abort - Пользовательское сообщение об ошибке больше не работает

Я использую Flask, а точнее abort с обработчиком ошибок. Я могу настроить сообщение, отправленное с моей ошибкой, с помощью make_response. Я также использую Blueprints для регистрации обработчика ошибок.

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

В моем примере я беру ошибку 401 и пытаюсь отправить сообщение "custom message".

Мой обработчик ошибки 401

@errors.app_errorhandler(401)
def access_denied(error):
    # if the description have the message attribute
    if 'message' in error.description:
        return make_response(jsonify(
            {
                'error': error.description['message']
            }
        ), 401)
    else:
        return make_response(jsonify(
            {
                'error': 'Access Denied'
            }
        ), 401)

Моя регистрация чертежей в __init__.py

from app.errors.ErrorHandler import errors
app.register_blueprint(errors)

Мой прерванный звонок

from flask import abort
abort(
      401,
      {
           'message': 'custom message'
      }
)

Ошибка 401 обрабатывается моим обработчиком, но отправленное сообщение - это сообщение по умолчанию «Доступ запрещен».

Настаиваю: вчера все заработало! (19 марта 2019 г. - 18:00) Возможно, это ошибка или улучшение, которое вообще не задокументировано.

Спасибо за вашу помощь, и если вам нужна дополнительная информация, не стесняйтесь спрашивать

Луи


person Louis Paret    schedule 20.03.2019    source источник


Ответы (1)


Проблема была в модуле werkzeug: https://github.com/pallets/werkzeug/issues/1483

Сейчас это исправлено

person Louis Paret    schedule 21.03.2019