flask之“应用上下文,请求上下文”

一. 概念对比

方面 请求上下文 (Request Context) 应用上下文 (Application Context)
用途 存储请求相关的数据 存储应用相关的数据
生命周期 一个请求开始到结束 一个请求开始到结束(与应用实例生命周期不同)
主要对象 request, session current_app, g
创建时机 请求进入时自动创建 请求进入时自动创建

二. 详细解析

应用上下文放在名为_app_ctx_stack的栈中,栈中元素是AppContext对象。其中current_app指向栈顶元素。

请求上下文放在名为_request_ctx_stack的栈中,栈中元素是RequestContext对象。其中request指向栈顶元素。

注:

RequestContext对象入栈时,如果_app_ctx_stack栈中没有AppContext对象,会把当前应用中的AppContext对象入栈

相关推荐
满怀冰雪3 小时前
22-使用 PaddleClas 快速训练图像分类模型
人工智能·python·机器学习·分类·数据挖掘·paddlepaddle
gb42152873 小时前
python中Web应用服务器
开发语言·前端·python
名明鸣冥4 小时前
k8s-agent架构思考(一)
python
DoLovya5 小时前
从零实现 ESP8266 + MQTT 智能门禁:公网一键开门、舵机控制、在线监控完整方案
python·物联网·mqtt·嵌入式·esp8266·门禁系统
AI情绪识别开源5 小时前
检信ALLEMOTION VibrationAI 2.4.0 12维度情绪识别开源源代码
开发语言·python
极创信息5 小时前
国产化信创适配认证高频术语:信创适配、软件自主可控、国产化率、代码溯源率、代码自主率、代码开源率是什么?
java·python·struts·eclipse·开源·php·hibernate
AC赳赳老秦6 小时前
语义采集进阶实战:利用 OpenClaw AI 语义识别自动提取网页核心信息,无需手动编写选择器
java·运维·服务器·python·信息可视化·deepseek·openclaw
Logintern096 小时前
什么时候应该用多进程什么时候用多线程呢?
开发语言·python
bboy枫亭7 小时前
Mac安装Miniconda3
python·conda·miniconda
无凭7 小时前
字节跳动 DeerFlow:Agent Harness 怎么让大模型主动向用户提问?
人工智能·python