因此,有3个概念:
g
session
中(存储请求中的数据,可能使用cookie)在Flask的文档中找不到。
我还查看了指南:https://pythonise.com/feed/flask/python-before-after-request-他们似乎将请求上下文与会话上下文混淆了。
我的代码(其模式):
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)
问题是如何做???SOMEHOW_GET_REQUEST_CONTEXT???()
。
答案 0 :(得分:0)
试试看!这是线程安全的
from flask import request
@app.after_request
def after_request_response_measure1(response):
request_context = SOMEHOW_GET_REQUEST_CONTEXT(request)
request_context['response_measure1'] = measure_response1(response)