我有一个供多个团队使用的 Flask RESTapi,我想记录用户统计信息。该 API 没有任何用户身份验证机制,因为我们的公司环境不需要它(它托管在内部服务器上,因此无论谁可以访问它,他/她都有权这样做)。
不过,我还是想知道大部分请求来自哪里。当然,我可以轻松地在每条路线上向数据库添加一个记录器,并保存 request.remote_addr
,但我想在调用具体路线之前执行此操作(因为实际上哪条路线并不重要被调用,无论如何我都想要用户统计信息);这样它就可以复制到其他基于 Flask 的 API,因此无需记住每次创建路由时都添加 user-logger。
那么,问题是我应该寻找 Flask 的哪一部分,以便在将请求分派(dispatch)到具体路由之前添加我的额外功能?
最佳答案
Flask 有一个 before_request 函数,您可以在那里使用全局请求对象访问当前请求。
from flask import request
@app.before_request
def working():
do_something_with_request(request)
关于python - Flask:添加使用统计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45393575/