Flask的四个钩子函数

| before_first_request | 第一次请求之前,初始化一次后就会失效.             |
| before_request       | 每次请求之前                    |
| after_request        | 没有异常情况下,每次请求之后            |

| teardown_request     | 每次请求之后,无论是否有异常,常用于关闭数据库连接 |


  from flask import Flask, g

      app = Flask(__name__)

 

@app.route('/g/')
def get_g():
    return g.string




# 钩子函数 before_first_request
@app.before_first_request
    def bf_first_request():
    # 设置g
    g.string = 'before first request'




# before_request每次请求之前
@app.before_request
    def bf_request():
        g.string = 'before request'




# after_request 每次请求之后,需要有一个参数,代表响应
@app.after_request
    def af_request(param):
             param.set_cookie('username', 'lisi')
             return param




# teardown_request 每次请求之后执行,不管是否异常
@app.teardown_request
    def td_request(exception=None):
            print('始终都会执行')

但是要注意一点,运行teardown时,要把debug= False



if __name__ == '__main__':
    app.run(threaded=True, debug=False)
   


猜你喜欢

转载自blog.csdn.net/Moniicoo/article/details/80841312
今日推荐