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

Исключение RequestEntityTooLarge

Исключение RequestEntityTooLarge вызывается Flask, когда размер тела входящего запроса превышает значение MAX_CONTENT_LENGTH, заданное в конфигурации приложения. Оно соответствует HTTP-статусу 413. Это исключение помогает защитить приложение от слишком больших загрузок и переполнения памяти. Параметров у класса нет, но при желании можно передать описание через аргумент description.

Синтаксис

from werkzeug.exceptions import RequestEntityTooLarge RequestEntityTooLarge(description=None)

Пример

Давайте зададим лимит размера запроса и обработаем исключение RequestEntityTooLarge:

from flask import Flask, request from werkzeug.exceptions import RequestEntityTooLarge app = Flask(__name__) app.config['MAX_CONTENT_LENGTH'] = 16 @app.errorhandler(RequestEntityTooLarge) def too_large(e): return 'request entity too large', 413 @app.route('/', methods=['POST']) def index(): return request.data.decode()

При отправке тела запроса, превышающего 16 байт, мы получим следующий ответ:

request entity too large

Пример

Давайте получим описание исключения с помощью атрибута description и вернём его в ответе:

from flask import Flask, request from werkzeug.exceptions import RequestEntityTooLarge app = Flask(__name__) app.config['MAX_CONTENT_LENGTH'] = 16 @app.errorhandler(RequestEntityTooLarge) def too_large(e): return e.description, 413 @app.route('/', methods=['POST']) def index(): return request.data.decode()

Результат выполнения кода для слишком большого тела запроса:

The data value transmitted exceeds the capacity limit.

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

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