ルートfoo()
に入る前に、すべてのリクエストを関数内に入れる方法を探しています。
request.environ
そうすれば、実際の作業を行う前に読むことができます。
私はコードを繰り返さないようにこれを行おうとしていますが、BottlyPyでそのようなことを行う方法を見つけることができません...
私の設定は次のとおりです:nginx->uwsgi->bottlepy。
それがプラグインの使用目的です。
次に例を示します。
import bottle
from bottle import request, response
def foo(callback):
def wrapper(*args, **kwargs):
# before view function execution
print(request.environ) # do whatever you want
body = callback(*args, **kwargs) # this line basically means "call the view normally"
# after view function execution
response.headers['X-Foo'] = 'Bar' # you don't need this, just an example
return body # another 'mandatory' line: return what the view returned (you can change it too)
return wrapper
bottle.install(foo)