Flask 基于wsgi源码启动流程

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 Response


def 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. 浏览器显示

相关推荐
玄同7654 分钟前
我的 Trae Skill 实践|使用 UV 工具一键搭建 Python 项目开发环境
开发语言·人工智能·python·langchain·uv·trae·vibe coding
Yorlen_Zhang14 分钟前
Python Tkinter Text 控件完全指南:从基础编辑器到富文本应用
开发语言·python·c#
Anita_Sun34 分钟前
一看就懂的 Haskell 教程 - 类型推断机制
后端·haskell
HAPPY酷43 分钟前
C++ 和 Python 的“容器”对决:从万金油到核武器
开发语言·c++·python
Anita_Sun1 小时前
一看就懂的 Haskell 教程 - 类型签名
后端·haskell
七八星天1 小时前
C#代码设计与设计模式
后端
砍材农夫1 小时前
threadlocal
后端
gpfyyds6661 小时前
Python代码练习
开发语言·python
神奇小汤圆2 小时前
告别手写HTTP请求!Spring Feign 调用原理深度拆解:从源码到实战,一篇搞懂
后端
布列瑟农的星空2 小时前
前端都能看懂的Rust入门教程(三)——控制流语句
前端·后端·rust