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

相关文章

Java及python正则表达式详解

Java及python正则表达式详解

正则表达式语法及常用元字符: 正则表达式有元字符及不同组合来构成,通过巧妙的构造正则表达式可以匹配任意字符串,并完成复杂的字符串处理任务。 常用的元字符有: 其中在使用反斜线时要注意:如...

Python基于whois模块简单识别网站域名及所有者的方法

Python基于whois模块简单识别网站域名及所有者的方法

本文实例讲述了Python基于whois模块简单识别网站域名及所有者的方法。分享给大家供大家参考,具体如下: 对于一些网站,我们可能会关心其所有者是谁。为了找到网站的所有者,我们可以使用...

python中argparse模块用法实例详解

本文实例讲述了python中argparse模块用法。分享给大家供大家参考。具体分析如下: 平常在写命令行工具的时候,经常会带参数,所以用python中的argparse来实现。 #...

python多线程http下载实现示例

测试平台 Ubuntu 13.04 X86_64 Python 2.7.4 花了将近两个小时, 问题主要刚开始没有想到传一个文件对象到线程里面去, 导致下载下来的文件和源文件MD5不一样...

python学习必备知识汇总

一、变量 1.变量 •指在程序执行过程中,可变的量; •定义一个变量,就会伴随有3个特征,分别是内存ID、数据类型和变量值。 •其他语言运行完之前,一...