如何解决尝试在flask restful 应用程序中为flask_limiter 创建自定义错误响应
我试图创建一个对特定端点具有某些限制的烧瓶应用程序。
我已经像这样定义了我的应用程序结构:
- run.py ->.实例化并运行 Flask 服务器
class MyFlaskApp(Flask):
def run(self,host=None,port=None,debug=None,**options):
with self.app_context():
super(MyFlaskApp,self).run(host=host,port=port,debug=debug,**options)
app = MyFlaskApp(__name__)
CORS(app)
@app.errorhandler(429)
def ratelimit_handler(e):
return e,209
if __name__ == "__main__":
app.run(host="0.0.0.0",port=5001,debug=True)
- limiter.py -> 包含的ratelmitter 配置文件。
@app.errorhandler(429)
def ratelimit_handler(e):
return e,209
app = Flask(__name__)
limiter = Limiter(app,key_func=get_remote_address)
- service.py -> 使用 Flask 可插入视图
class MyView(flask.views.MethodView):
decorators = [limiter.limit("10/second")]
def post(self):
return "get"
def someother_functions(self):
return ""
- app.py-> 包含所有路由
api_bp = Blueprint('api',__name__)
api = Api(api_bp)
#Route
api.add_resource(service_file.service,'/getpost')
速率限制似乎工作正常,但我的自定义错误处理程序似乎不起作用。我想要实现的是捕获 429 错误代码并将其作为 2xx 组中的其他代码返回,因为我的服务器端存在一些限制,但这似乎不起作用,即使我将它放在 limiter.py 文件中相似地。我已经被困在这几个小时了!。任何帮助将不胜感激!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。