python - 检查 Flask 请求上下文是否可用

标签 python logging flask werkzeug

我想在 Flask 请求期间记录时从上下文变量(requestsession)记录一些数据,但如果不是,则使用默认行为。

我在 logging.formatter 中使用 try ... except block 。有没有更好的方法来检查请求上下文?

try:
    record.user = session['user_name']
    record.very_important_data = request.super_secret
except Exception:
    record.user = None

最佳答案

使用 has_request_contexthas_app_context .

if has_request_context():
    # request is active

或者,current_appgrequestsession 都是 LocalProxy< 的实例。如果代理没有绑定(bind),当被视为 bool 值时,它将是False

if request:
    # request is active

关于python - 检查 Flask 请求上下文是否可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40284800/

相关文章:

Python mocking-理解概念和必要性

python - 从 ipywidgets FileUpload 访问多个上传文件的内容

hibernate - 如何在 JHipster 中更改 hibernate 日志记录级别?

cocoa - 自定义 NSLog,使其显示更少的信息

python - 如果字段在 Python 中为空,则返回 json 字段的优雅方法

python - DatetimeIndex 偏移量

python - 在Python中解压字典并获取值

java - SolrJetty 日志记录 - 如何让自定义日志格式化程序正常工作?

android - 如何在flask framework web server和android app之间发送和接收数据

javascript - Dropzone 上传到 Flask 应用后不会重定向