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 在每个请求完成时,会自动调用请求上下文和应用上下文的弹出逻辑。

相关推荐
_code_bear_2 分钟前
OpenSpec CLI 与 OPSX 工作流说明
前端·后端·架构
Cloud_Shy6183 分钟前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第八章 使用读写包操作 Excel 文件 上篇)
python·数据分析·excel·pandas
輕華14 分钟前
uv工具详解——Python包与项目管理器完全指南
开发语言·python·uv
li星野16 分钟前
位运算 & 数学 & 高频进阶九题通关(Python + C++)
c++·python·学习·算法
用户83562907805118 分钟前
使用 Python 在 PowerPoint 中添加并控制音频播放
后端·python
2303_8212873823 分钟前
如何清洗SQL输入数据_使用框架内置的ORM处理数据交互
jvm·数据库·python
go不是csgo26 分钟前
s01 搭建第一个对话智能体
服务器·网络·python·ai
用户83562907805129 分钟前
使用 Python 在 PowerPoint 中生成并自定义饼图与环形图
后端·python
棉猴32 分钟前
python海龟绘图之倾转
python·turtle·海龟绘图·titlangle·tilt
念何架构之路36 分钟前
Go语言常见并发模式
开发语言·后端·golang