flask 重写wsgi_app实现自定义中间件

flask的自定义中间件(自己加方法)

# 了解的知识点

from flask import Flask

app = Flask(__name__)

# 重写方法,让它可以在自定义中间件
class MyMiddleware:
    def __init__(self, old_wsgi_app):  # 类加括号执行该方法
        self.old_wsgi_app = old_wsgi_app

    def __call__(self, environ, start_response): # 对象加括号执行该方法
        print('开始之前加方法')
        res = self.old_wsgi_app(environ, start_response)
        print('结束之后加方法')
        return res


@app.route('/')
def index():
    return 'ok'



if __name__ == '__main__':
    app.wsgi_app = MyMiddleware(app.wsgi_app)
    app.run()

posted @ 2020-03-19 19:14  alen_zhan  阅读(704)  评论(0编辑  收藏  举报
返回顶部