flask中如何主动抛出异常
更新:HHH   时间:2023-1-7


这篇文章给大家分享的是有关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中如何主动抛出异常”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

返回开发技术教程...