程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Flask Limiter 错误:TypeError: Limiter.__init__() 为参数 'key_func' 获取了多个值

发布于2023-02-03 21:28     阅读(386)     评论(0)     点赞(8)     收藏(5)


我正在尝试使用 Flask 的速率限制库来基于秒对 api 进行速率限制。

所以我使用了这种完全相同的格式来限制对 Apahce 服务器上 API 的请求。但是我现在使用的是 NGINX。我认为这没有什么不同,但是当我运行这段代码时:

import api

app = Flask(__name__, instance_relative_config=True)

limiter = Limiter(app, default_limits=["5/second"], key_func=lambda: get_remote_address)

limiter.limit("5/second", key_func=lambda: request.args.get('token') if 'token' in request.args else get_remote_address)(api.bp)

app.register_blueprint(api.bp)

我再次在另一台服务器上运行了完全相同的代码,但现在它给出了这个错误:

    limiter = Limiter(app, "5/second", key_func=lambda: request.args.get('token') if 'token' in request.args else get_remote_address)

TypeError: Limiter.__init__() got multiple values for argument 'key_func'

任何帮助都会很棒。我在 python 中使用 Flask-Limiter 并在 NGINX 的 gunicorn 服务器上运行 gevent。谢谢。


解决方案


暂无回答



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/1895308/318e0d29ee938eb2ab77/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

8 0
收藏该文
已收藏

评论内容:(最多支持255个字符)