run 下图为flask 执行 app.run()时的执行过程,并且当接收到请求时__call__的执行流程,flask的请求执行过程可以参照我写的 https://blog.youkuaiyun.com/DALAOS/article/details/113566518 request 执行流程如果和大家理解有出入可以私信我,来讨论正确流程 apprun_simple()SharedDataMiddlewareinner()BaseWSGIServerrunrun_simple(host, port, self, **options)SharedDataMiddleware(application, static_files)返回application<SharedDataMiddleware obj>执行inner()make_servermake_server返回一个srv<BaseWSGIServer>srv.serve_forever()srv.serve_forever()HTTPServer.serve_forever(self)make_serverwhile not self.__shutdown_request循环监听如果当前我收到请求转发流程为self._handle_request_noblock()self.process_request(request, client_address)self.finish_request(request, client_address)self.RequestHandlerClass(request, client_address, self) <WSGIRequestHandler>顶层父类BaseRequestHandler中__init__的self.handle()BaseHTTPRequestHandler.handle(self)self.handle_one_request()self.run_wsgi()application_iter = app(environ, start_response)loop[make_server]执行__call__执行__call__apprun_simple()SharedDataMiddlewareinner()BaseWSGIServer