Flask -Limiter не работает при развертывании на Heroku - PullRequest
0 голосов
/ 06 августа 2020

Я создал приложение flask, которое я бы ограничил добавлением Flask -Limiter. Он намеревается позволить пользователю использовать маршрут один раз в минуту. Если пользователь пытается снова, он перенаправляется на настраиваемую страницу 429. На локальном хосте он работает абсолютно идеально, однако при фиксации его в моем приложении Heroku ограничитель не предотвращает использование маршрута несколько раз. Он также не перенаправляет на страницу 429.

app = Flask(__name__)
limiter = Limiter(
    app,
    key_func=get_remote_address,
    default_limits=["200 per day", "50 per hour"]
)

@main_bp.route('/main', methods=['POST'])
@limiter.limit("1/minute")
def text_sum():
   the code blah blah blah

@main_bp.errorhandler(429)
def ratelimit_handler(e):
    return render_template('main429.html', result = "Please try again in 1 minute")

1 Ответ

1 голос
/ 09 августа 2020

Как указано в v25 - я просто изменил файл proc на этот:

web: gunicorn --workers 1 wsgi:app
...