Исключение 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,
который содержит числовой код ошибки