diff --git a/web/conceptnet_web/api.py b/web/conceptnet_web/api.py index 33921056..ac03f1ac 100644 --- a/web/conceptnet_web/api.py +++ b/web/conceptnet_web/api.py @@ -6,6 +6,7 @@ import flask from flask_cors import CORS from flask_limiter import Limiter +from flask_limiter.util import get_remote_address from conceptnet5 import api as responses from conceptnet5.api import VALID_KEYS, error @@ -37,7 +38,8 @@ def app_path(path): for filter_name, filter_func in FILTERS.items(): app.jinja_env.filters[filter_name] = filter_func app.jinja_env.add_extension('jinja2_highlight.HighlightExtension') -limiter = Limiter(app, global_limits=["600 per minute", "6000 per hour"]) +limiter = Limiter(app, key_func=get_remote_address, + global_limits=["600 per minute", "6000 per hour"]) CORS(app) try_configuring_sentry(app) application = app # for uWSGI diff --git a/web/setup.py b/web/setup.py index 0cdd38aa..d402c984 100644 --- a/web/setup.py +++ b/web/setup.py @@ -23,7 +23,7 @@ include_package_data=True, install_requires=[ 'conceptnet >= %s' % version_str, - 'limits', 'flask >= 0.12.3', 'flask-cors', 'flask-limiter', + 'limits', 'flask >= 2.0.2', 'flask-cors >=3.0.10', 'flask-limiter == 2.0.2', 'langcodes >= 2.1', 'jinja2-highlight', 'pygments', 'raven[flask] >= 6.6' ], license = 'Apache License 2.0',