Обработка ошибок
В случае обработки ошибок, вы всегда можете напрямую установить код состояния ошибки, соответствующие заголовки ответа и тело ошибки, используя объект resp. Однако, Falcon старается упростить задачу, предоставив набор классов ошибок, которые можно поднимать, когда что-то идёт не так. Все эти классы наследуются от HTTPError.
Falcon преобразует любой экземпляр или подкласс HTTPError, поднятый обработчиком, хуком или компонентом промежуточного программного обеспечения, в соответствующий HTTP-ответ. По умолчанию обработчик ошибок поддерживает JSON и XML. Если клиент указывает приемлемость как JSON, так и XML с одинаковым весом, будет выбран JSON. Другие типы носителей могут поддерживаться путём переопределения стандартного обработчика посредством set_error_serializer().
Примечание
Если используется пользовательский тип носителя, и тип включает суффикс «+json» или «+xml», стандартный обработчик преобразует ошибку в JSON или XML соответственно.
Все классы доступны напрямую в пространстве имён пакета falcon:
import falcon
class MessageResource(object):
def on_get(self, req, resp):
# ...
raise falcon.HTTPBadRequest(
'TTL Out of Range',
'The message's TTL must be between 60 and 300 seconds, inclusive.'
)
# ...
Также обратите внимание, что любые исключения (не только экземпляры HTTPError) могут быть перехвачены, записаны в журнал и в противном случае обработаны на глобальном уровне путём регистрации одного или нескольких пользовательских обработчиков ошибок. Смотрите также add_error_handler(), чтобы узнать больше об этой функции.
Базовый класс
-
class falcon.HTTPError(status, title=None, description=None, headers=None, href=None, href_text=None, code=None)[source] -
Представляет собой общую ошибку HTTP.
Поднимите экземпляр или подкласс
HTTPError, чтобы Falcon вернул отформатированный ответ об ошибке и соответствующий код HTTP-статуса клиенту, когда что-то пойдёт не так. По умолчанию поддерживаются типы носителей JSON и XML.Чтобы настроить представление об ошибке, реализуйте пользовательский обработчик ошибок и установите его на экземпляре
APIчерезset_error_serializer().Чтобы настроить передаваемые в обработчик данные, создайте подкласс
HTTPErrorи переопределите методto_dict()(to_json()реализован черезto_dict()). Чтобы также поддерживать XML, переопределите методto_xml().-
status -
str – Строка HTTP-статуса, например, «748 Confounded by Ponies».
-
has_representation -
bool – Только для чтения свойство, определяющее, будут ли детали об ошибке сериализованы при формировании HTTP-ответа. В
HTTPErrorэто свойство всегда возвращаетTrue, но дочерние классы могут переопределить его, чтобы вернутьFalseпри необходимости пустого тела HTTP-ответа.(См. также:
falcon.http_error.NoRepresentation)
-
title -
str – Заголовок ошибки для отправки клиенту.
-
description -
str – Описание ошибки для отправки клиенту.
-
headers -
dict – Дополнительные заголовки для добавления в ответ.
-
link -
str – Ссылка, которую клиент может предоставить пользователю для получения помощи.
-
code -
int – Внутренний код приложения, который пользователь может использовать при запросе поддержки ошибки.
Параметры: status (str) – Код и текст HTTP-статуса, например, «400 Bad Request»
Ключевые аргументы: -
title (str) – Читабельный заголовок ошибки. Если не указан, по умолчанию используется строка HTTP-статуса, определённая аргументом
status. -
description (str) – Читабельное описание ошибки, вместе с полезным советом или двумя (по умолчанию
None). -
headers (dict или list) –
Словарь имён и значений заголовков для установки или список кортежей (имя, значение). Как имя, так и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибок и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который пользователь может посетить для получения дополнительной информации (по умолчанию
None). Символы Unicode кодируются в процентах. - href_text (str) – Если задан href, используйте это в качестве дружественного заголовка/описания для ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
to_dict(obj_type=<type 'dict'>)[source] -
Возвращает базовый словарь, представляющий ошибку.
Этот метод может быть полезен при сериализации ошибки в типы носителей, похожие на хэши, такие как YAML, JSON и MessagePack.
Параметры: obj_type – Тип, похожий на словарь, который будет использоваться для хранения информации об ошибке (по умолчанию dict).Возвращает: Словарь, заполненный заголовком, описанием и т.д. ошибки. Тип возвращаемого значения: dict
-
to_json()[source] -
Возвращает красивое JSON-представление ошибки.
Возвращает: JSON-документ для ошибки. Тип возвращаемого значения: str
-
to_xml()[source] -
Возвращает XML-представление ошибки.
Возвращает: XML-документ для ошибки. Тип возвращаемого значения: str
-
Миксины
-
class falcon.http_error.NoRepresentation[source] -
Миксин для
HTTPErrorдочерних классов, у которых нет представления.Этот класс может быть смешан с
HTTPError, чтобы переопределить свойствоhas_representation, чтобы оно всегда возвращалоFalse. Это, в свою очередь, заставит Falcon возвращать пустой ответ клиенту.Вы можете использовать этот миксин при определении ошибок, которые либо не должны иметь тела (как предписывают HTTP-стандарты или общие практики), либо в случае, если подробный ответ об ошибке может раскрыть информацию злоумышленнику.
Примечание
Этот миксин-класс должен предшествовать
HTTPErrorв списке базовых классов при определении дочернего класса; в противном случае он не переопределит свойствоhas_representationдолжным образом.
Предопределённые ошибки
-
exception falcon.HTTPBadRequest(title=None, description=None, **kwargs)[source] -
Ошибка 400 Bad Request.
Сервер не может или не будет обрабатывать запрос из-за ошибки клиента (например, неправильный синтаксис запроса, неверный формат сообщения запроса или обманчивый маршрут запроса).
(См. также: RFC 7231, Раздел 6.5.1)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘400 Bad Request’).
- description (str) – Человекопонятное описание ошибки, вместе с полезным советом или двумя.
-
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить, чтобы получить дополнительную информацию (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте его в качестве удобочитаемого заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPInvalidHeader(msg, header_name, **kwargs)[source] -
Ошибка 400 Bad Request.
Один из заголовков в запросе неверный.
Параметры: Ключевые аргументы: -
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить, чтобы получить дополнительную информацию (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте его в качестве удобочитаемого заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
headers (dict или list) –
-
exception falcon.HTTPMissingHeader(header_name, **kwargs)[source] -
Ошибка 400 Bad Request
В запросе отсутствует заголовок.
Параметры: header_name (str) – Имя отсутствующего заголовка.
Ключевые аргументы: -
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить, чтобы получить дополнительную информацию (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте его в качестве удобочитаемого заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
headers (dict или list) –
-
exception falcon.HTTPInvalidParam(msg, param_name, **kwargs)[source] -
400 Ошибка запроса
Неверный параметр в запросе. Эта ошибка может относиться к параметру в строке запроса, форме или документе, отправленных с запросом.
Параметры: Ключевые аргументы: -
headers (dict или список) –
Список имён и значений заголовков для установки, или список кортежей (name, value). И name, и value должны быть типа
strилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если указан href, использовать это значение в качестве описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, относящихся к этой ошибке (по умолчанию
None).
-
headers (dict или список) –
-
exception falcon.HTTPMissingParam(param_name, **kwargs)[source] -
400 Ошибка запроса
Параметр отсутствует в запросе. Эта ошибка может относиться к параметру в строке запроса, форме или документе, отправленных с запросом.
Параметры: param_name (str) – Имя отсутствующего параметра.
Ключевые аргументы: -
headers (dict или список) –
Список имён и значений заголовков для установки, или список кортежей (name, value). И name, и value должны быть типа
strилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если указан href, использовать это значение в качестве описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, относящихся к этой ошибке (по умолчанию
None).
-
headers (dict или список) –
-
401 Неавторизован.
Запрос не был обработан из-за отсутствия действительных учетных данных аутентификации для целевого ресурса.
Сервер, генерирующий ответ 401, ОБЯЗАН отправить заголовок WWW-Authenticate, содержащий по крайней мере одну возможность аутентификации, применимую к целевому ресурсу.
Если запрос содержал учетные данные аутентификации, то ответ 401 указывает на то, что авторизация для этих учетных данных была отклонена. Пользовательский агент МОЖЕТ повторить запрос с новым или измененным заголовком Authorization. Если ответ 401 содержит ту же возможность аутентификации, что и предыдущий ответ, и пользовательский агент уже пытался выполнить аутентификацию хотя бы один раз, то пользовательский агент ДОЛЖЕН отобразить заключенную в нем информацию пользователю, поскольку она обычно содержит релевантную диагностическую информацию.
(См. также: RFC 7235, Раздел 3.1)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию «401 Неавторизован»).
- description (str) – Понятное описание ошибки, вместе с полезным советом или двумя.
-
challenges (итерируемый объект str) –
Одна или несколько возможностей аутентификации, которые нужно использовать в качестве значения заголовка WWW-Authenticate в ответе.
(См. также: RFC 7235, Раздел 2.1)
-
headers (dict или список) –
Список имён и значений заголовков для установки, или список кортежей (name, value). И name, и value должны быть типа
strилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если указан href, использовать это значение в качестве описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, относящихся к этой ошибке (по умолчанию
None).
-
exception falcon.HTTPForbidden(title=None, description=None, **kwargs)[source] -
403 Запрещено.
Сервер понял запрос, но отказался его авторизовать.
Сервер, желающий объяснить, почему запрос был запрещён, может описать эту причину в полезной нагрузке ответа (если таковая имеется).
Если в запросе были предоставлены учетные данные аутентификации, сервер считает их недостаточными для предоставления доступа. Клиент НЕ ДОЛЖЕН автоматически повторять запрос с теми же учетными данными. Клиент МОЖЕТ повторить запрос с новыми или другими учетными данными. Однако запрос может быть запрещен по причинам, не связанным с учетными данными.
Исходный сервер, желающий «скрыть» текущее существование запрещённого целевого ресурса, МОЖЕТ вместо этого ответить кодом состояния 404 «Не найдено».
(См. также: RFC 7231, Раздел 6.5.4)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию «403 Запрещено»).
- description (str) – Понятное для пользователя описание ошибки, вместе с полезным советом или двумя.
-
headers (dict or list) –
A
dictимён и значений заголовков для установки илиlistкортежей (имя, значение). Оба имя и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, используйте его в качестве понятного заголовка/описания для ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPNotFound(**kwargs)[source] -
404 Не найдено.
Исходный сервер не нашёл текущего представления для целевого ресурса или не хочет раскрывать, что оно существует.
Код состояния 404 не указывает, является ли отсутствие представления временным или постоянным; код состояния 410 «Удалён» предпочтительнее кода 404, если исходный сервер знает (предположительно, через какие-то настраиваемые средства), что состояние, скорее всего, постоянное.
Ответ 404 кешируется по умолчанию; то есть, если явно не указано иначе определением метода или явными инструкциями кеширования.
(См. также: RFC 7231, Раздел 6.5.3)
Ключевые аргументы: -
title (str) – Понятный для пользователя заголовок ошибки. Если не указан, и
descriptionтакже не указан, в ответе не будет тела. -
description (str) – Понятное для пользователя описание ошибки, вместе с полезным советом или двумя (по умолчанию
None). -
headers (dict or list) –
A
dictимён и значений заголовков для установки илиlistкортежей (имя, значение). Оба имя и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, используйте его в качестве понятного заголовка/описания для ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
title (str) – Понятный для пользователя заголовок ошибки. Если не указан, и
-
exception falcon.HTTPMethodNotAllowed(allowed_methods, **kwargs)[source] -
405 Метод запрещен.
Метод, полученный в строке запроса, известен исходному серверу, но не поддерживается целевым ресурсом.
Исходный сервер ДОЛЖЕН сгенерировать заголовок Allow в ответе 405, содержащем список текущих поддерживаемых методов целевого ресурса.
Ответ 405 кешируется по умолчанию; то есть, если явно не указано иначе определением метода или явными инструкциями кеширования.
(См. также: RFC 7231, Раздел 6.5.5)
Параметры: allowed_methods (list of str) – Разрешённые HTTP-методы для этого ресурса (например,
['GET', 'POST', 'HEAD']).Ключевые аргументы: -
title (str) – Понятный для пользователя заголовок ошибки. Если не указан, и
descriptionтакже не указан, в ответе не будет тела. -
description (str) – Понятное для пользователя описание ошибки, вместе с полезным советом или двумя (по умолчанию
None). -
headers (dict or list) –
A
dictимён и значений заголовков для установки илиlistкортежей (имя, значение). Оба имя и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, используйте его в качестве понятного заголовка/описания для ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
title (str) – Понятный для пользователя заголовок ошибки. Если не указан, и
-
exception falcon.HTTPNotAcceptable(description=None, **kwargs)[source] -
406 Неприемлемо.
У целевого ресурса нет текущего представления, которое было бы приемлемо для пользовательского агента в соответствии с заголовками запроса о переговорах, полученными в запросе, и сервер не желает предоставить представление по умолчанию.
Сервер ДОЛЖЕН сгенерировать полезную нагрузку, содержащую список доступных характеристик представления и соответствующих идентификаторов ресурсов, из которых пользователь или пользовательский агент могут выбрать наиболее подходящий. Пользовательский агент МОЖЕТ автоматически выбрать наиболее подходящий вариант из этого списка. Однако эта спецификация не определяет какой-либо стандарт для такого автоматического выбора, как описано в RFC 7231, Раздел 6.4.1
(См. также: RFC 7231, Раздел 6.5.6)
Аргументы ключевых слов: - description (str) – описание ошибки для понимания человеком, вместе с полезным предложением или двумя.
-
headers (dict или list) –
Словарь или список пар имён и значений заголовков для установки, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и только символьные значения от 0x00 до 0xFF могут быть использованы на платформах, использующих широкие символы.Примечание
Заголовок Content-Type, если он присутствует, будет переопределён. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, по которому можно узнать больше информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, используйте это в качестве дружественного заголовка/описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPConflict(title=None, description=None, **kwargs)[source] -
409 Конфликт.
Запрос не может быть выполнен из-за конфликта с текущим состоянием целевого ресурса. Этот код используется в ситуациях, когда пользователь может разрешить конфликт и повторно отправить запрос.
Сервер ДОЛЖЕН сгенерировать полезную нагрузку, содержащую достаточно информации для пользователя, чтобы распознать источник конфликта.
Конфликты чаще всего возникают в ответ на запрос PUT. Например, если использовалась версия, и представление, помещаемое с помощью PUT, содержало изменения в ресурсе, конфликтующие с изменениями, сделанными более ранним (третьим) запросом, исходный сервер может использовать ответ 409 для указания того, что он не может выполнить запрос. В этом случае представление ответа, вероятно, будет содержать информацию, полезную для слияния различий на основе истории версий.
(См. также: RFC 7231, Раздел 6.5.8)
Аргументы ключевых слов: - title (str) – Заголовок ошибки (по умолчанию «409 Конфликт»).
- description (str) – описание ошибки для понимания человеком, вместе с полезным предложением или двумя.
-
headers (dict или list) –
Словарь или список пар имён и значений заголовков для установки, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и только символьные значения от 0x00 до 0xFF могут быть использованы на платформах, использующих широкие символы.Примечание
Заголовок Content-Type, если он присутствует, будет переопределён. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, по которому можно узнать больше информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, используйте это в качестве дружественного заголовка/описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPGone(**kwargs)[source] -
410 Отсутствует.
Запрашиваемый ресурс больше недоступен на сервере происхождения, и это состояние, вероятно, является постоянным.
Если сервер происхождения не знает или не имеет возможности определить, является ли состояние постоянным, вместо этого следует использовать код состояния 404 Не найдено.
Ответ 410 в первую очередь предназначен для поддержки задач технического обслуживания веб-сайтов, уведомляя получателя о том, что ресурс преднамеренно недоступен, и владельцы сервера хотят, чтобы удалённые ссылки на этот ресурс были удалены. Такое событие часто происходит с услугами ограниченного срока действия, рекламными услугами и ресурсами, принадлежащими пользователям, которые больше не ассоциируются с сайтом сервера происхождения. Не обязательно помечать все постоянно недоступные ресурсы как «отсутствующие» или сохранять пометку в течение какого-либо времени — это решается по усмотрению владельца сервера.
Ответ 410 кешируется по умолчанию; то есть, если не указано иное в определении метода или явных параметрах кеширования.
(См. также: RFC 7231, Раздел 6.5.9)
Ключевые аргументы: -
title (str) – Название ошибки в удобочитаемом формате. Если не указано, и
descriptionтакже не указано, тело ответа не будет включено. -
description (str) – Удобочитаемое описание ошибки с полезным советом или двумя (по умолчанию
None). -
headers (dict или list) –
Список пар «имя заголовка — значение» для установки, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, можно использовать только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий ответ HTTP для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, где можно получить дополнительную информацию (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, используйте эту строку в качестве дружественного заголовка/описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
title (str) – Название ошибки в удобочитаемом формате. Если не указано, и
-
exception falcon.HTTPLengthRequired(title=None, description=None, **kwargs)[source] -
411 Требуется длина.
Сервер отказывается принимать запрос без определения длины содержимого (Content-Length).
Клиент может повторить запрос, если добавит корректный заголовок Content-Length, содержащий длину тела сообщения в запросе.
(См. также: RFC 7231, Раздел 6.5.10)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию «411 Требуется длина»).
- description (str) – Удобочитаемое описание ошибки с полезным советом или двумя.
-
headers (dict или list) –
Список пар «имя заголовка — значение» для установки, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, можно использовать только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий ответ HTTP для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, где можно получить дополнительную информацию (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, используйте эту строку в качестве дружественного заголовка/описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPPreconditionFailed(title=None, description=None, **kwargs)[source] -
412 Условие не выполнено.
Одно или несколько условий, заданных в заголовках запроса, оказались ложными при проверке на сервере.
Этот код ответа позволяет клиенту установить условия на текущее состояние ресурса (его текущие представления и метаданные) и, таким образом, предотвратить применение метода запроса, если целевой ресурс находится в непредвиденном состоянии.
(См. также: RFC 7232, Раздел 4.2)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию «412 Условие не выполнено»).
- description (str) – Удобочитаемое описание ошибки с полезным советом или двумя.
-
headers (dict или list) –
Список пар «имя заголовка — значение» для установки, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, можно использовать только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс ошибок HTTP и установить обработчик ошибок для преобразования его в соответствующий ответ HTTP для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, где можно получить дополнительную информацию (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, используйте эту строку в качестве дружественного заголовка/описания ссылки (по умолчанию «Документация API для этой ошибки»).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPRequestEntityTooLarge(title=None, description=None, retry_after=None, **kwargs)[source] -
413 Запрос слишком большой.
Сервер отказывается обрабатывать запрос, так как размер тела запроса превышает предельно допустимый размер.
Сервер МОЖЕТ закрыть соединение, чтобы предотвратить продолжение запроса клиентом.
Если условие временное, сервер ДОЛЖЕН сгенерировать заголовок Retry-After, чтобы указать, что это временно и через какое время клиент может повторить попытку.
(См. также: RFC 7231, Раздел 6.5.11)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘413 Request Entity Too Large’).
- description (str) – Понятное описание ошибки с полезным советом или двумя.
-
retry_after (datetime или int) – Значение для заголовка Retry-After. Если
datetimeобъект, будет сериализован как HTTP дата. В противном случае ожидается неотрицательноеintцелое число, представляющее количество секунд ожидания. -
headers (dict или список) –
Словарь или список кортежей (название, значение) для установки заголовков. И название и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если присутствует, будет перезаписан. Если вы хотите возвращать собственные сообщения об ошибках, вы можете создать собственный класс HTTP ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, на который можно перейти для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если задан href, используйте это в качестве описания/заголовка ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или при поиске статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPUriTooLong(title=None, description=None, **kwargs)[source] -
414 Слишком длинный URI.
Сервер отказывается обрабатывать запрос, так как целевой URI слишком длинный.
Это редкое условие, вероятно, возникает только при неправильном преобразовании POST-запроса в GET-запрос с длинной информацией запроса, при «циклических» переадресациях (например, переадресованный URI-префикс, который указывает на суффикс самого себя), или при атаке на сервер клиентом, пытающимся использовать потенциальные уязвимости.
Ответ 414 кэшируется по умолчанию, то есть, если не указано иначе в определении метода или явных инструкциях кэширования.
(См. также: RFC 7231, Раздел 6.5.12)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘414 URI Too Long’).
-
description (str) – Понятное описание ошибки с полезным советом или двумя (по умолчанию
None). -
headers (dict или список) –
Словарь или список кортежей (название, значение) для установки заголовков. И название и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если присутствует, будет перезаписан. Если вы хотите возвращать собственные сообщения об ошибках, вы можете создать собственный класс HTTP ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, на который можно перейти для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если задан href, используйте это в качестве описания/заголовка ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или при поиске статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPUnsupportedMediaType(description=None, **kwargs)[source] -
415 Неподдерживаемый тип медиа.
Исходный сервер отказывается обслуживать запрос, так как содержимое запроса имеет формат, не поддерживаемый данным методом на целевом ресурсе.
Проблема формата может быть вызвана указанным в запросе Content-Type или Content-Encoding, или в результате непосредственного анализа данных.
(См. также: RFC 7231, Раздел 6.5.13)
Ключевые аргументы: - description (str) – Понятное описание ошибки с полезным советом или двумя.
-
headers (dict или список) –
Словарь или список кортежей (название, значение) для установки заголовков. И название и значение должны быть типа
strилиStringType, и на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если присутствует, будет перезаписан. Если вы хотите возвращать собственные сообщения об ошибках, вы можете создать собственный класс HTTP ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, на который можно перейти для получения дополнительной информации (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если задан href, используйте это в качестве описания/заголовка ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или при поиске статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPRangeNotSatisfiable(resource_length)[source] -
416 Диапазон не может быть удовлетворён.
Ни один из диапазонов в поле заголовка Range запроса не перекрывает текущий объём выбранного ресурса или набор запрошенных диапазонов был отклонен из-за недопустимых диапазонов или чрезмерного запроса малых или перекрывающихся диапазонов.
Для байтовых диапазонов отсутствие перекрытия с текущим объёмом означает, что значение первого байта (first-byte-pos) всех байтовых диапазонов (byte-range-spec) было больше текущей длины выбранного представления. Когда этот код состояния генерируется в ответ на запрос байтового диапазона, отправитель ДОЛЖЕН сгенерировать поле заголовка Content-Range, указывающее текущую длину выбранного представления.
(См. также: RFC 7233, раздел 4.4)
Параметры: resource_length – Максимальное значение для последнего байта (last-byte-pos) запроса диапазона. Используется для установки заголовка Content-Range.
-
exception falcon.HTTPUnprocessableEntity(title=None, description=None, **kwargs)[source] -
422 Необработанный контент.
Сервер понимает тип контента запрошенного объекта (поэтому код состояния 415 Неподдерживаемый тип носителя не подходит), и синтаксис запрошенного объекта корректен (следовательно, код состояния 400 Плохой запрос не подходит), но не смог обработать содержащиеся инструкции.
Например, эта ошибка может возникнуть, если тело XML-запроса содержит хорошо сформированные (т.е. синтаксически правильные), но семантически ошибочные инструкции XML.
(См. также: RFC 4918, раздел 11.2)
Ключевые аргументы: - title (str) – Название ошибки (по умолчанию ‘422 Необработанный контент’).
- description (str) – Человекопонятное описание ошибки, вместе с полезным советом или двумя.
-
headers (dict или список) –
A
dictимён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются по процентам. - href_text (str) – Если задан href, использовать его в качестве понятного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPLocked(title=None, description=None, **kwargs)[source] -
423 Заблокировано.
Код состояния 423 (Заблокировано) означает, что ресурс источника или назначения метода заблокирован. Этот ответ ДОЛЖЕН содержать соответствующий код условия предварительной обработки или последующей обработки, например, ‘lock-token-submitted’ или ‘no-conflicting-lock’.
(См. также: RFC 4918, раздел 11.3)
Ключевые аргументы: - title (str) – Название ошибки (по умолчанию ‘423 Заблокировано’).
- description (str) – Человекопонятное описание ошибки, вместе с полезным советом или двумя.
-
headers (dict или список) –
A
dictимён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются по процентам. - href_text (str) – Если задан href, использовать его в качестве понятного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPFailedDependency(title=None, description=None, **kwargs)[source] -
424 Неудачная зависимость.
Код состояния 424 (Неудачная зависимость) означает, что метод не может быть выполнен на ресурсе, потому что запрошенное действие зависело от другого действия, и это действие не удалось.
(См. также: RFC 4918, раздел 11.4)
Ключевые аргументы: - title (str) – Название ошибки (по умолчанию ‘424 Неудачная зависимость’).
- description (str) – Человекопонятное описание ошибки, вместе с полезным советом или двумя.
-
headers (dict или список) –
A
dictимён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет переопределён. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются по процентам. - href_text (str) – Если задан href, использовать его в качестве понятного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPPreconditionRequired(title=None, description=None, **kwargs)[source] -
428 Требуется предусловие.
Код состояния 428 указывает, что исходный сервер требует, чтобы запрос был условным.
Его типичное использование заключается в предотвращении проблемы «потерянного обновления», когда клиент получает состояние ресурса, изменяет его и отправляет его обратно на сервер, а в то же время третья сторона изменила состояние на сервере, что приводит к конфликту. Требуя, чтобы запросы были условными, сервер может гарантировать, что клиенты работают с правильными копиями.
Ответы, использующие этот код состояния, ДОЛЖНЫ объяснять, как повторно отправить запрос успешно.
(См. также: RFC 6585, Раздел 3)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘428 Требуется предусловие’).
- description (str) – Описание ошибки для пользователя, вместе с полезным советом или двумя.
-
headers (dict или list) –
Словарь (или список) пар «имя заголовка — значение», которые нужно установить, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и только символы с кодами 0x00 до 0xFF могут быть использованы на платформах, использующих широкие символы.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать свой собственный класс ошибок HTTP и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, использовать его в качестве дружественного заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут указать в своих запросах поддержки или использовать при поиске статей в базе знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPTooManyRequests(title=None, description=None, retry_after=None, **kwargs)[source] -
429 Слишком много запросов.
Пользователь отправил слишком много запросов за заданный период времени («ограничение скорости»).
Представления ответов ДОЛЖНЫ содержать подробности об этом состоянии и МОГУТ содержать заголовок Retry-After, указывающий, сколько времени нужно подождать перед отправкой нового запроса.
Ответы со статусом 429 НЕ ДОЛЖНЫ храниться в кэше.
(См. также: RFC 6585, Раздел 4)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘429 Слишком много запросов’).
- description (str) – Описание превышенного лимита скорости.
-
retry_after (datetime или int) – Значение для заголовка Retry-After. Если объект
datetime, он будет сериализован как HTTP-дата. В противном случае ожидается неотрицательноеintцелое число, представляющее количество секунд, которое нужно подождать. -
headers (dict или list) –
Словарь (или список) пар «имя заголовка — значение», которые нужно установить, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и только символы с кодами 0x00 до 0xFF могут быть использованы на платформах, использующих широкие символы.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать свой собственный класс ошибок HTTP и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, использовать его в качестве дружественного заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут указать в своих запросах поддержки или использовать при поиске статей в базе знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPRequestHeaderFieldsTooLarge(title=None, description=None, **kwargs)[source] -
431 Заголовок запроса слишком большой.
Код состояния 431 указывает, что сервер не желает обрабатывать запрос, потому что его заголовки слишком велики. Запрос МОЖЕТ быть повторен после уменьшения размера заголовков запроса.
Он может использоваться как для слишком большого размера набора заголовков запроса в целом, так и когда неисправен отдельный заголовок. В последнем случае представление ответа ДОЛЖНО указать, какой заголовок был слишком большим.
Ответы со статусом 431 НЕ ДОЛЖНЫ храниться в кэше.
(См. также: RFC 6585, Раздел 5)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘431 Заголовок запроса слишком большой’).
- description (str) – Описание превышенного лимита скорости.
-
headers (dict или list) –
Словарь (или список) пар «имя заголовка — значение», которые нужно установить, или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, и только символы с кодами 0x00 до 0xFF могут быть использованы на платформах, использующих широкие символы.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать свой собственный класс ошибок HTTP и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который можно посетить для получения дополнительной информации (по умолчанию
None). Символы Юникода кодируются в процентах. - href_text (str) – Если задан href, использовать его в качестве дружественного заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут указать в своих запросах поддержки или использовать при поиске статей в базе знаний, связанных с этой ошибкой (по умолчанию
None).
-
451 Недоступно по юридическим причинам.
Сервер отказывается предоставлять доступ к ресурсу в соответствии с юридическим требованием.
Запрашиваемый сервер может не являться сервером источника. Этот тип юридического требования, как правило, в наибольшей степени затрагивает работу провайдеров интернет-услуг и поисковых систем.
Ответы, использующие этот код состояния, ДОЛЖНЫ включать объяснение деталей юридического требования в теле ответа: сторону, его предъявившую, применимое законодательство или нормативный акт и к каким категориям лиц и ресурсов оно относится.
Обратите внимание, что во многих случаях клиенты по-прежнему могут получить доступ к запрещённому ресурсу, используя технические меры противодействия, такие как VPN или сеть Tor.
Ответ со статусом 451 кэшируется по умолчанию; то есть, если не указано иное в определении метода или явных настройках кэша.
(См. также: RFC 7725, Раздел 3)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘451 Недоступно по юридическим причинам’).
-
description (str) – Читабельное описание ошибки для пользователя, вместе с полезным советом или двумя (по умолчанию
None). -
headers (dict или list) –
A
dictсписка имён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнесколько быстрее, чемdict. -
href (str) – URL, по которому можно получить дополнительную информацию (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать его в качестве дружественного заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с данной ошибкой (по умолчанию
None).
-
exception falcon.HTTPInternalServerError(title=None, description=None, **kwargs)[source] -
500 Ошибка внутренней обработки сервера.
Сервер столкнулся с непредвиденной ситуацией, которая помешала ему выполнить запрос.
(См. также: RFC 7231, Раздел 6.6.1)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘500 Ошибка внутренней обработки сервера’).
- description (str) – Читабельное описание ошибки для пользователя, вместе с полезным советом или двумя.
-
headers (dict или list) –
A
dictсписка имён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнесколько быстрее, чемdict. -
href (str) – URL, по которому можно получить дополнительную информацию (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать его в качестве дружественного заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с данной ошибкой (по умолчанию
None).
-
exception falcon.HTTPNotImplemented(title=None, description=None, **kwargs)[source] -
501 Не реализовано.
Код состояния 501 (Не реализовано) указывает, что сервер не поддерживает функциональность, необходимую для выполнения запроса. Это подходящий ответ, когда сервер не распознаёт метод запроса и не способен его поддерживать ни для одного ресурса.
Ответ со статусом 501 кэшируется по умолчанию; то есть, если не указано иное в определении метода или явных настройках кэша, как описано в RFC 7234, Раздел 4.2.2.
(См. также: RFC 7231, Раздел 6.6.2)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘500 Ошибка внутренней обработки сервера’).
- description (str) – Читабельное описание ошибки для пользователя, вместе с полезным советом или двумя.
-
headers (dict или list) –
A
dictсписка имён и значений заголовков для установки, илиlistкортежей (имя, значение). И имя, и значение должны быть типаstrилиStringType, а на платформах, использующих широкие символы, могут использоваться только символы с кодами от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите вернуть пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента
Примечание
Falcon может обрабатывать список
tupleнесколько быстрее, чемdict. -
href (str) – URL, по которому можно получить дополнительную информацию (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать его в качестве дружественного заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в своих запросах в службу поддержки или для поиска статей базы знаний, связанных с данной ошибкой (по умолчанию
None).
-
exception falcon.HTTPBadGateway(title=None, description=None, **kwargs)[source] -
502 Ошибка шлюза.
Сервер, действуя в качестве шлюза или прокси, получил недопустимый ответ от сервера, к которому обратился, пытаясь выполнить запрос.
(См. также: RFC 7231, Раздел 6.6.3)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘502 Bad Gateway’).
- description (str) – Понятное описание ошибки с полезными советами.
-
headers (dict или список) –
Словарь или список пар (имя, значение) для задания заголовков, или список имен и значений заголовков. И имя, и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL с дополнительной информацией (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать это значение в качестве заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
503 Сервис недоступен.
Сервер в настоящее время не может обработать запрос из-за временной перегрузки или запланированного технического обслуживания, которое, скорее всего, будет устранено после некоторой задержки.
Сервер МОЖЕТ отправить заголовок Retry-After, чтобы предложить соответствующее время ожидания клиенту перед повторной попыткой запроса.
Примечание: наличие кода состояния 503 не означает, что сервер должен его использовать при перегрузке. Некоторые серверы могут просто отклонить соединение.
(См. также: RFC 7231, Раздел 6.6.4)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘503 Service Unavailable’).
- description (str) – Понятное описание ошибки с полезными советами.
-
retry_after (datetime или int) – Значение для заголовка Retry-After. Если объект
datetime, он будет сериализован как HTTP-дата. В противном случае ожидается неотрицательноеintчисло, представляющее количество секунд ожидания. -
headers (dict или список) –
Словарь или список пар (имя, значение) для задания заголовков. И имя, и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL с дополнительной информацией (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать это значение в качестве заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPGatewayTimeout(title=None, description=None, **kwargs)[source] -
504 Таймаут шлюза.
Код состояния 504 (Таймаут шлюза) указывает, что сервер, действуя в качестве шлюза или прокси, не получил своевременный ответ от сервера, к которому ему необходимо было получить доступ для завершения запроса.
(См. также: RFC 7231, Раздел 6.6.5)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘503 Сервис недоступен’).
- description (str) – Понятное описание ошибки с полезными советами.
-
headers (dict или список) –
Словарь или список пар (имя, значение) для задания заголовков. И имя, и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок, чтобы преобразовать его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL с дополнительной информацией (по умолчанию
None). Символы Юникода закодированы в процентах. - href_text (str) – Если указан href, использовать это значение в качестве заголовка/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPVersionNotSupported(title=None, description=None, **kwargs)[source] -
505 HTTP Версия не поддерживается
Код состояния 505 (HTTP Версия не поддерживается) указывает, что сервер не поддерживает или отказывается поддерживать главную версию HTTP, которая была использована в запросе. Сервер указывает, что он не может или не желает выполнить запрос, используя ту же главную версию, что и клиент (как описано в RFC 7230, Раздел 2.6), кроме как с этим сообщением об ошибке. Сервер ДОЛЖЕН сгенерировать представление для ответа 505, которое описывает, почему эта версия не поддерживается и какие другие протоколы поддерживаются этим сервером.
(См. также: RFC 7231, Раздел 6.6.6)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘503 Сервис недоступен’).
- description (str) – Пользовательское описание ошибки вместе с полезным советом или двумя.
-
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах, использующих широкие символы, разрешены только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать свой собственный класс HTTP-ошибок и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который пользователь может посетить, чтобы узнать больше информации (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте это значение в качестве дружественного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPInsufficientStorage(title=None, description=None, **kwargs)[source] -
507 Недостаточно памяти.
Код состояния 507 (Недостаточно памяти) означает, что метод не может быть выполнен с ресурсом, так как сервер не может сохранить представление, необходимое для успешного выполнения запроса. Это состояние считается временным. Если запрос, получивший этот код состояния, был результатом действия пользователя, запрос НЕ ДОЛЖЕН повторяться, пока не будет вызван отдельным действием пользователя.
(См. также: RFC 4918, Раздел 11.5)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘507 Недостаточно памяти’).
- description (str) – Пользовательское описание ошибки вместе с полезным советом или двумя.
-
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах, использующих широкие символы, разрешены только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать свой собственный класс HTTP-ошибок и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который пользователь может посетить, чтобы узнать больше информации (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте это значение в качестве дружественного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPLoopDetected(title=None, description=None, **kwargs)[source] -
508 Цикл обнаружен.
Код состояния 508 (Цикл обнаружен) указывает, что сервер прервал операцию, так как обнаружил бесконечный цикл во время обработки запроса с «Глубина: бесконечность». Это состояние указывает на то, что вся операция завершилась неудачно.
(См. также: RFC 5842, Раздел 7.2)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘508 Цикл обнаружен’).
- description (str) – Пользовательское описание ошибки вместе с полезным советом или двумя.
-
headers (dict или list) –
Словарь или список пар (имя, значение) для установки заголовков. Имя и значение должны быть типа
strилиStringType, а на платформах, использующих широкие символы, разрешены только символы с кодами 0x00 до 0xFF.Примечание
Заголовок Content-Type, если он есть, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать свой собственный класс HTTP-ошибок и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL, который пользователь может посетить, чтобы узнать больше информации (по умолчанию
None). Символы Unicode закодированы в процентах. - href_text (str) – Если задан href, используйте это значение в качестве дружественного названия/описания ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах в службу поддержки или для поиска статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
-
exception falcon.HTTPNetworkAuthenticationRequired(title=None, description=None, **kwargs)[source] -
Требуется сетевая аутентификация (статус-код 511).
Код состояния 511 указывает, что клиенту необходимо пройти аутентификацию для получения сетевого доступа.
Представление ответа ДОЛЖНО содержать ссылку на ресурс, который позволяет пользователю ввести учетные данные.
Обратите внимание, что ответ со статусом 511 НЕ ДОЛЖЕН содержать запрос на аутентификацию или сам интерфейс аутентификации, так как клиенты могут отобразить интерфейс как связанный с первоначально запрошенным URL, что может вызвать путаницу.
Код состояния 511 НЕ ДОЛЖЕН генерироваться серверами-источниками; он предназначен для использования прокси-серверами, которые вставлены в качестве средства управления доступом к сети.
Ответы со статусом 511 НЕ ДОЛЖНЫ храниться кэшем.
(См. также: RFC 6585, Раздел 6)
Ключевые аргументы: - title (str) – Заголовок ошибки (по умолчанию ‘Требуется сетевая аутентификация (статус-код 511)’).
- description (str) – Пользовательское описание ошибки с полезным советом.
-
headers (dict или list) –
Список пар «имя заголовка — значение», или список кортежей (имя, значение). И имя, и значение должны быть типа
strилиStringType, а на платформах с широкими символами могут использоваться только символы от 0x00 до 0xFF.Примечание
Заголовок Content-Type, если присутствует, будет перезаписан. Если вы хотите возвращать пользовательские сообщения об ошибках, вы можете создать собственный класс HTTP-ошибки и установить обработчик ошибок для преобразования его в соответствующий HTTP-ответ для клиента.
Примечание
Falcon может обрабатывать список
tupleнемного быстрее, чемdict. -
href (str) – URL для получения дополнительной информации (по умолчанию
None). Символы Юникода будут закодированы в процентах. - href_text (str) – Если указан href, используйте это значение в качестве дружественного заголовка/описания для ссылки (по умолчанию ‘Документация API для этой ошибки’).
-
code (int) – Внутренний код, который клиенты могут использовать в запросах поддержки или при поиске статей базы знаний, связанных с этой ошибкой (по умолчанию
None).
© 2012–2016 by Rackspace Hosting, Inc. and other contributors
Licensed under the Apache License, Version 2.0.
https://falcon.readthedocs.io/en/1.3.0/api/errors.html