Исключение Locked
Исключение Locked относится к классу HTTP-исключений
Flask и соответствует коду состояния 423. Оно применяется,
когда ресурс, к которому обращается клиент, заблокирован
и не может быть изменён. При возбуждении исключения Flask
автоматически формирует ответ с соответствующим статусом.
Первым параметром можно передать описание ошибки, которое
попадёт в тело ответа.
Синтаксис
from werkzeug.exceptions import Locked
raise Locked(description)
Пример
Давайте возбудим исключение Locked в обработчике
и посмотрим на результат:
from flask import Flask
from werkzeug.exceptions import Locked
app = Flask(__name__)
@app.route('/')
def index():
raise Locked('Resource is locked')
Результат выполнения кода:
<+html+>
423 Locked
Resource is locked
<-html+>
Пример
Давайте перехватим исключение Locked
и вернём собственный ответ:
from flask import Flask
from werkzeug.exceptions import Locked
app = Flask(__name__)
@app.route('/')
def index():
try:
raise Locked('Resource is locked')
except Locked as e:
return {
'code': e.code,
'name': e.name,
'description': e.description
}
Результат выполнения кода:
{'code': 423, 'name': 'Locked', 'description': 'Resource is locked'}
Смотрите также
-
класс
HTTPException,
который является базой для всех HTTP-исключений -
исключение
Conflict,
которое сигнализирует о конфликте с текущим состоянием ресурса -
исключение
Forbidden,
которое сообщает об отказе в доступе к ресурсу -
атрибут
description,
который хранит текстовое описание ошибки