РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
406 of 643 menu

Исключение FailedDependency

Класс FailedDependency наследуется от базового класса HTTPException и представляет собой исключение, соответствующее статус-коду 424 Failed Dependency. Оно применяется для указания на то, что выполнение текущего запроса невозможно, потому что необходимый для него запрос завершился неудачно. Это часто используется в контексте WebDAV или в микросервисной архитектуре, где один сервис зависит от результата работы другого. При возникновении этого исключения Flask автоматически возвращает клиенту ответ с кодом 424 и соответствующим описанием.

Синтаксис

from flask import Flask from werkzeug.exceptions import FailedDependency app = Flask(__name__) # Вызов исключения raise FailedDependency()

Пример

Давайте создадим простое приложение, которое выбрасывает исключение FailedDependency при обращении к определённому маршруту:

from flask import Flask from werkzeug.exceptions import FailedDependency app = Flask(__name__) @app.route('/dependency') def dependency_error(): raise FailedDependency()

При переходе по адресу /dependency сервер вернёт ответ с кодом 424.

Пример

Давайте перехватим исключение и вернём кастомное описание ошибки:

from flask import Flask from werkzeug.exceptions import FailedDependency app = Flask(__name__) @app.route('/custom-dependency') def custom_dependency_error(): e = FailedDependency(description='The upstream service is unavailable') raise e

Результат выполнения кода для адреса /custom-dependency:

The upstream service is unavailable

Смотрите также

  • класс HTTPException,
    который является базовым для всех HTTP-исключений
  • исключение PreconditionFailed,
    которое возникает при невыполнении предусловия
  • исключение InternalServerError,
    которое сигнализирует о внутренней ошибке сервера
  • атрибут code,
    который содержит числовой код ошибки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить