flask上下文管理机制
flask中的上下文分为请求上写文和应用上下文,接下来,从以下三个大的方面分别探讨flask的两大上下文管理机制。 方面一:请求进来时 方面二:视图函数 方面三:请求结束前 先来一个最简单的flask版的Hello World from flask import Flask app = Flask(__name__) @app.route('/') def index(): return "Hello World" if __name__ == '__main__': app.run() Flask版Hello World flask版的Hello World 启动一个flask项目时,会先执行app.run()方法,这是整个项目的入口,执行run方法时,接着执行werkzeug模块中的run_simple 此时的self指的是我们实例化的Flask对象,即app,当请求到来时,会触发调用Flask的__call__方法。 一、请求进来时 触发执行__call__方法,__call__方法的逻辑很简单,直接执行wsgi_app方法,将包含所有请求相关数据和一个响应函数传进去。 此时的self指的是Flask的实例化对象app,接下来执行app的wsgi_app方法。 此时的self仍然指的是Flask的实例化对象app,首先执行app这个对象的request_context的方法