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

Исключение TooManyRequests

Исключение TooManyRequests наследуется от класса HTTPException и соответствует статус-коду 429. Оно применяется, когда клиент отправил слишком много запросов за определённый промежуток времени. Первым параметром передаётся описание ошибки, вторым - объект ответа, третьим - дополнительные заголовки. Если параметры не переданы, используются значения по умолчанию.

Синтаксис

from werkzeug.exceptions import TooManyRequests TooManyRequests(description=None, response=None)

Пример

Давайте вызовем исключение TooManyRequests внутри обработчика:

from flask import Flask from werkzeug.exceptions import TooManyRequests app = Flask(__name__) @app.route('/') def index(): raise TooManyRequests('too many requests')

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

429 Too Many Requests

Пример

Давайте обработаем исключение TooManyRequests через специальный обработчик ошибок:

from flask import Flask, jsonify from werkzeug.exceptions import TooManyRequests app = Flask(__name__) @app.errorhandler(TooManyRequests) def handle_too_many_requests(error): res = { 'error': error.name, 'description': error.description } return jsonify(res), 429 @app.route('/') def index(): raise TooManyRequests('too many requests')

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

{ "description": "too many requests", "error": "429 Too Many Requests" }

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

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