擅长:python、mysql、java
<p>我认为正确的方法应该是装饰工,因为它完全符合需求。下面是代码w.r.t烧瓶的工件。在</p>
<p>需要注意的是,您需要将控件从decorator返回给处理程序。在</p>
<pre><code>from functools import wraps
from flask import Flask, request
app = Flask(__name__)
def http_error_codes(method_name):
@wraps(method_name)
def handle_exceptions(*args):
try:
print("Inside the exceptions")
return method_name(*args)
except Exception as e:
print("HAHAHAHA")
raise e
return handle_exceptions
def do_the_login():
return "Testing is fun"
def show_the_login_form():
raise ValueError('The day is too frabjous.')
@app.route('/login', methods=['GET', 'POST'])
@http_error_codes
def login():
if request.method == 'POST':
return do_the_login()
else:
return show_the_login_form()
if __name__ == '__main__':
app.run()
</code></pre>
<p>希望这有帮助</p>