ミドルウェアのrequest.urlにアクセスしたいと思います。Flask MIddlewareのリクエストにアクセスする方法
フラスコアプリ - test.py
from flask import Flask
from middleware import TestMiddleware
app = Flask(__name__)
app.wsgi_app = TestMiddleware(app.wsgi_app)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
middleware.py:
from flask import request
class TestMiddleware(object):
def __init__(self, app):
self.app = app
def __call__(self, environ, start_response):
# How do I access request object here.
print "I'm in middleware"
return self.app(environ, start_response)
Iが要求フラスコアプリケーション・コンテキストにアクセスすることができ理解します。私たちは通常使用します
with app.test_request_context()
しかしミドルウェアでは、私はFlaskアプリケーションオブジェクトにアクセスできません。
どうすればいいですか?任意の助け
おかげで..
アプリケーションオブジェクトをミドルウェアに渡すだけでアクセスできます。 'app.wsgi_app = TestMiddleware(app.wsgi_app、app)' – kaka