Flask找上下文源码

1. app = Flask(name)

app.call

1.1 按住 command 键 点击 进到这个函数里

1.2 接着找 return 看看返回什么 点进去

1.3 找到定义函数

1.4 点进去先看这个里边有啥

1.5 找到定义类

1.6 找到RequestContext 类

1.7 找到 RequestContext ---> 的push 方法

1.8 点击 _cv_request 找到 globals.py 下的 _cv_request栈

2. 在wsgi的push方法中

2.1 进到push 方法

2.2 进到 app_context

2.3 进到APPContext

2.4 在ctx.py下 找到AppContext 类

2.5 找到AppContext --> 的push 方法

2.6 点击 _cv_app ---> 找到 globals.py 下的 _cv_app栈

3. 找到 --> APPContext --> RequestContext

3.1 进到LocalProxy

栈入口

栈的入口可以理解为:

应用上下文入口:当 app_ctx.push() 被调用时,应用上下文被推入栈。

请求上下文入口:当 _cv_request.set(self) 被调用时,当前请求上下文被推入栈。

栈退出

栈的退出通常在 pop() 方法中处理。Flask 在每个请求完成时,会自动调用请求上下文和应用上下文的弹出逻辑。

相关推荐
问窗14 分钟前
计算机视觉入门案例 高速公路车辆计数系统技术解析
python·opencv·计算机视觉
hikktn14 分钟前
企业级Spring Boot应用管理:从零打造生产级启动脚本
java·spring boot·后端
SimonKing19 分钟前
别再死磕 Elasticsearch 了,这个轻量级搜索引擎更香
java·后端·程序员
Gopher_HBo21 分钟前
阻塞队列之ArrayBlockingQueue
后端
Fleshy数模24 分钟前
基于机器视觉的工业产品型号识别与报警系统实现
python·ocr·pyqt
gf132111124 分钟前
python_更新飞书多维表格的单项关联字段
数据库·python·飞书
2601_9536603726 分钟前
File类
linux·开发语言·python
GIOTTO情27 分钟前
Infoseek 媒介投放 API 实战:基于 Python 的全流程自动化方案摘要
开发语言·python·自动化
广州灵眸科技有限公司29 分钟前
瑞芯微(EASY EAI)RV1126B 千兆以太网电路
服务器·前端·人工智能·python·深度学习