Flask 的 请求扩展 与 中间件

Posted Python & more

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask 的 请求扩展 与 中间件相关的知识,希望对你有一定的参考价值。

Flask 的 请求扩展 与 中间件


flask 可以通过  扩展 来实现类似于django 中间件的功能

类似于django 的中间件, 在执行视图函数之前, 之后的执行某些功能


1 @app.before_first_request

执行一次,在第一个函数执行后 就不再执行(状态改为False)


    @app.before_first_request
    def before_first_request1():
        print('before_first_request1')


2 @app.before_request: process_request

    在视图函数执行前,按照顺序依次执行(列表顺序)

    @app.before_request
    def before_request1():
        Request.nnn = 123
        print('before_request1')


    @app.before_request
    def before_request2():
        print('before_request2')


3 @app.after_request: process_response

    在视图函数执行后,按照反序依次执行(列表逆序)

    @app.after_request
    def after_request1(response):
        print('before_request1', response)
        return response


    @app.after_request
    def after_request2(response):
        print('before_request2', response)
        return response

以上是关于Flask 的 请求扩展 与 中间件的主要内容,如果未能解决你的问题,请参考以下文章

第二篇 Flask基础篇之(闪现,蓝图,请求扩展,中间件)

flask框架2

请求扩展以及错误处理

Flask08-01 Flask高级

Flask框架cbv的写法请求与响应请求扩展session源码分析闪现

Flask - 中间件