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

相关推荐
跟着珅聪学java1 小时前
spring boot +Elment UI 上传文件教程
java·spring boot·后端·ui·elementui·vue
蹦蹦跳跳真可爱5892 小时前
Python----计算机视觉处理(Opencv:道路检测之提取车道线)
python·opencv·计算机视觉
徐小黑ACG2 小时前
GO语言 使用protobuf
开发语言·后端·golang·protobuf
Tanecious.4 小时前
机器视觉--python基础语法
开发语言·python
ALe要立志成为web糕手4 小时前
SESSION_UPLOAD_PROGRESS 的利用
python·web安全·网络安全·ctf
战族狼魂5 小时前
CSGO 皮肤交易平台后端 (Spring Boot) 代码结构与示例
java·spring boot·后端
Tttian6226 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel
杉之6 小时前
常见前端GET请求以及对应的Spring后端接收接口写法
java·前端·后端·spring·vue
蹦蹦跳跳真可爱5896 小时前
Python----机器学习(KNN:使用数学方法实现KNN)
人工智能·python·机器学习
hycccccch7 小时前
Canal+RabbitMQ实现MySQL数据增量同步
java·数据库·后端·rabbitmq