1.abort的使用
-
目标:可以使用abort抛出http状态码异常
-
文件: d03_abort.py
-
作用: 抛出异常http状态码
-
使用:
# abort(http错误状态码) 4XX 5XX abort(404)
2.异常捕获处理
-
目标:可以使用errorhandler捕获异常
-
文件: d04_errorhandler.py
-
使用格式
@app.errorhandler(404) def func_404(e): return "这是一个漂亮的404页面", 404
-
使用场景: 统一返回404不存在的页面。
-
小结
errorhandler除了可以捕获http错误状态码,还可以捕获0除错误等。 一般abort和异常捕获配合使用。
3.请求钩子的使用
-
目标:了解请求钩子的执行顺序
-
文件: d05_hook.py
-
作用: 准备和扫尾的工作。
-
before_first_request: 在所有请求开始前执行一次
@app.before_first_request def before_first_request(): print('before_first_request')
-
before_request: 在所有请求开始前执行(常用)
@app.before_request def before_request(): print('before_request')
-
after_request : 在所有请求, 视图函数执行完后执行(常用)
@app.after_request def after_request(response): # 注意,函数需要接受视图函数执行完后传递过来的response对象。 print('after_request')
-
teardown_request : 在after_request钩子后执行,严格来说是在请求上下文被销毁时执行
@app