flask中主动抛出异常及统一异常处理代码示例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
flask中主动抛出异常及统⼀异常处理代码⽰例
本⽂主要介绍的是flask中主动抛出异常及统⼀异常处理的相关内容,具体如下。
在开发时,后台出现异常,但不想把异常显⽰给⽤户或者要统⼀处理异常时,可以使⽤abort主动抛出异常,再捕获异常返回美化后的页⾯。
主动抛出异常:
@user.route('/testError')
def testError():
print ('testError')
abort(404)
使⽤装饰器errorhandler捕获异常:
@user.errorhandler(404)
def error(e):
return render_template('exception/404.html')
这样可以⾃定义异常页⾯。
如果使⽤error_handler,那么只有本蓝本中的错误才会触发,想要全局异常处理,需要使⽤
app_errorhandler。
将所有异常处理写在⼀个蓝本中。
#coding:utf-8
#error
from flask import Blueprint, render_template, redirect,session,request,abort
exception = Blueprint('exception',__name__)
@exception.app_errorhandler(404)
def error(e):
return render_template('exception/404.html')
在view.py中注册蓝本
app.register_blueprint(exception, url_prefix='/error')
这样,所有蓝本触发的异常都可以处理了。
总结
以上就是本⽂关于flask中主动抛出异常及统⼀异常处理代码⽰例的全部内容,希望对⼤家有所帮助。
感兴趣的朋友可以继续参阅本站其他相关专题,如有不⾜之处,欢迎留⾔指出。
感谢朋友们对本站的⽀持!。