Flask 基于wsgi源码启动流程

devtools/2024/11/28 17:27:36/

1. 点击 __call__ 进入到源码 

2.  找到 __call__ 方法 return 执行的是 wsgi方法

 3. 点击 wsgi 方法 进到 wsgi return 执行的是 response 方法

 4. 点击response 方法  进到 full_dispatch_request

5.  full_dispatch_request 执行finalize_request 方法

 

6. finalize_request 执行response 方法 

7.  进到 make_response 方法 执行 rv

 

8. rv 执行 Response Response 在wrappers.py 中 继承 ResponseBase

 9.  __call__ 中的wsgi方法 就等同于 

werkzeug.wrappers 的 Response

 

10.  run 方法 执行的是 run_simple

11. 因此可以得出

python">
from werkzeug.serving import run_simple
from werkzeug.wrappers import Responsedef app(environ, start_response):print("请求执行")response = Response("你好")return response(environ, start_response)if __name__ == '__main__':run_simple('127.0.0.1', 5000, app)

12. 点击链接进入浏览器

 13. 浏览器显示

 


http://www.ppmy.cn/devtools/137718.html

相关文章

YOLOv10改进,YOLOv10添加RFAConv卷积创新空间注意力和标准卷积,包括RFCAConv, RFCBAMConv,二次创新C2f结构,助力涨点

摘要 空间注意力已广泛应用于提升卷积神经网络(CNN)的性能,但它存在一定的局限性。作者提出了一个新的视角,认为空间注意力机制本质上解决了卷积核参数共享的问题。然而,空间注意力生成的注意力图信息对于大尺寸卷积核来说是不足够的。因此,提出了一种新型的注意力机制—…

uniapp生命周期:应用生命周期和页面生命周期

文章目录 1.应用的生命周期2.页面的生命周期 1.应用的生命周期 生命周期的概念:一个对象从创建、运行、销毁的整个过程被称为生命周期 生命周期函数:在生命周期中每个阶段会伴随着每一个函数的出发,这些函数被称为生命周期函数 所有页面都…

2022 年 3 月青少年软编等考 C 语言三级真题解析

目录 T1. 和数思路分析T2. 生理周期思路分析T3. 分解因数T4. 文件结构 “图”思路分析T5. 矩形数量思路分析T1. 和数 给定一个正整数序列,判断其中有多少个数,等于数列中其他两个数的和。比如,对于数列 1 2 3 4 1\ 2\ 3\ 4 1 2 3 4,这个问题的答案就是 2 2 2,因为…

C++模板(入门)

文章目录 泛型编程函数模板函数模板的概念函数模板格式函数模板的原理函数模板的实例化隐式实例化显示实例化模板参数的匹配 类模板为什么有类模板类模板的定义格式类模板的实例化Stack模板类的简单实现(不涉及深拷贝) 模板的注意问题模板不支持分离编译…

Android studio 利用cmake编译和使用so文件

1.编译出so文件 1.1 创建支持c的项目 需要在sdk-tools下载ndk和cmake Android studio会自动给一个含有jni的demo,运行打印出 hello c; //这边你文件project static {System.loadLibrary("withnewest");} //声明需要调用的方法 public nativ…

Vscode进行Java开发环境搭建

Vscode进行Java开发环境搭建 搭建Java开发环境(Windows)1.Jdk安装2.VsCode安装3.Java插件4.安装 Spring 插件5.安装 Mybatis 插件5.安装Maven环境6.Jrebel插件7.IntelliJ IDEA Keybindings8. 收尾 VS Code(Visual Studio Code)是由微软开发的一款免费、开…

ffmpeg命令详解

原文网址:ffmpeg命令详解_IT利刃出鞘的博客-CSDN博客 简介 本文介绍ffmpeg命令的用法。 命令示例 1.mp4和avi的基本互转 ffmpeg -i D:\input.mp4 E:\output.avi ffmpeg -i D:\input.avi E:\output.mp4 -i 表示input,即输入。后面填一个输入地址和一…

数据源的统一与拆分 apache calcite 的雄心与现实

随笔 从千万粉丝“何同学”抄袭开源项目说起,为何纯技术死路一条? 数据源的统一与拆分 apache calcite 的雄心与现实 报警系统的指标、规则与执行闭环 java 老矣,尚能饭否? 一骑红尘妃子笑,无人知是荔枝来! 数据…