flask中主动抛出异常及统一异常处理代码示例

yipeiwu_com6年前Python基础

本文主要介绍的是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中主动抛出异常及统一异常处理代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python处理文本文件实现生成指定格式文件的方法

本文所述实例为Python处理文本文件并生成指定格式文件的方法,具体实现功能代码如下所示: import os import sys import string #以指定模式打开指...

PyTorch中的padding(边缘填充)操作方式

PyTorch中的padding(边缘填充)操作方式

简介 我们知道,在对图像执行卷积操作时,如果不对图像边缘进行填充,卷积核将无法到达图像边缘的像素,而且卷积前后图像的尺寸也会发生变化,这会造成许多麻烦。 因此现在各大深度学习框架的卷积层...

利用arcgis的python读取要素的X,Y方法

如下所示: import arcpy ... from arcpy import env ... env.workspace="C:\\Users\\Administrator\\D...

Python对字符串实现去重操作的方法示例

Python对字符串实现去重操作的方法示例

前言 最近在工作经常会碰到对字符串进行去重操作,下面就给大家列出用Python如何处理的,话不多说了,来一起看看详细的介绍吧。 比如说,要拿下面的字符传去掉重复的AA, A(B,C)...

浅谈pandas中DataFrame关于显示值省略的解决方法

浅谈pandas中DataFrame关于显示值省略的解决方法

python的pandas库是一个非常好的工具,里面的DataFrame更是常用且好用,最近是越用越觉得设计的漂亮,pandas的很多细节设计的都非常好,有待使用过程中发掘。 好了,发完...