2015-07-05 12 views
12

मेरे पास कुछ कोड है जो मैं फ्लास्क में आने वाले प्रत्येक अनुरोध के लिए दौड़ना चाहता हूं - विशेष रूप से कुछ विश्लेषिकी जानकारी जोड़ना। मुझे पता है कि मैं इसे एक सजावटी के साथ कर सकता हूं, लेकिन मैं अपने प्रत्येक विचार के लिए कोड की अतिरिक्त लाइनों को बर्बाद नहीं करना चाहता हूं। क्या इस कोड को केवल कैच में लिखने का कोई तरीका है जो प्रत्येक दृश्य के पहले या बाद में लागू किया जाएगा?फ्लास्क में सभी अनुरोधों के लिए मैं कार्रवाई कैसे करूं?

उत्तर

18

फ्लास्क ने पहले और बाद में अनुरोध किए गए हुक समर्पित किए हैं। हैरानी की बात है, वे कहा जाता है:

@app.before_request 
def do_something_whenever_a_request_comes_in(): 
    # request is available 

@app.after_request 
def do_something_whenever_a_request_has_been_handled(response): 
    # we have a response to manipulate, always return one 
    return response 
:

दोनों सज्जाकार हैं

संबंधित मुद्दे