我一直在使用Django和Django在运行时将请求对象传递给视图。在Flask中看起来(从第一眼看)应用程序拥有请求并将其导入(就好像它是一个静态资源)。我不明白这一点,我只想把我的大脑包裹在WSGI和Flask等地方。感谢任何帮助。
答案 0 :(得分:7)
在Flask中,请求是一个线程安全的全局,所以你实际上导入它:
from flask import request
我不确定此功能是否与WSGI相关,因为其他WSGI微框架确实将请求作为视图函数参数传递。 “全局”请求对象是Flask的一项功能。 Flask还鼓励存储用户数据,该数据对于名为flask.g的类似对象中的单个请求有效:
共享对一个有效的数据 请求只从一个功能 另外,全局变量并不好 足够因为它会破产 线程环境。烧瓶提供 你有一个特殊的对象确保 它仅对活动有效 请求,将返回不同 每个请求的值。在一个 简而言之:它做对了, 就像它对请求和会话一样。