So, there are 3 concepts:
- Application Context - stored in
g
- Session Context - stored in
session
(stores data across requests, may use cookies) - Request Context - ???
Couldn't find in Flask's docs.
I also looked in the guide: https://pythonise.com/feed/flask/python-before-after-request - they seem to confuse request context with session context.
My code (its pattern):
def handle_path1(event, request_context):
return gen_response(event, request_context)
app = Flask(__name__)
app.add_url_rule('/path1', '/path1', handle_path1)
@app.after_request
def after_request_response_audit(response):
request_context = ???SOMEHOW_GET_REQUEST_CONTEXT???()
logging.info('%s %s' % (
request_context['response_measure1'],
request_context['response_measure2']
))
@app.after_request
def after_request_response_measure2(response):
request_context = ???SOMEHOW_GET_REQUEST_CONTEXT???()
request_context['response_measure2'] = measure_response2(response)
@app.after_request
def after_request_response_measure1(response):
request_context = ???SOMEHOW_GET_REQUEST_CONTEXT???()
request_context['response_measure1'] = measure_response1(response)
The question is how to do ???SOMEHOW_GET_REQUEST_CONTEXT???()
.