跳转至

Flask入门笔记-08_异常捕获

  • Flask框架对http错误进行了封装, 可以进行异常捕捉, 和主动抛出异常

主动抛出异常

  • 使用abort方法,可以主动抛出异常,需要一个code参数
  • abort底层查看源码 可以看出是使用的raise来实现的
@app.route('/')
def index():

    #手动抛出异常
    abort(404)

    return '这里是首页'

异常捕捉

  • 使用app的errorhandler方法作为装饰器,当服务器爆出指定错误状态码的时候,就会调用该装饰器所装饰的方法
  • 需要一个code 参数来捕捉异常的状态码, 或捕捉指定的错误类型
# 捕捉404错误码
@app.errorhandler(404)
def err_404(e):
    return '页面未找到, 错误信息是: {}'.format(e)

# 捕捉500错误码
@app.errorhandler(500)
def err_server(e):
    return '服务器崩溃了:{}'.format(e)

# 捕捉指定错误类型
@app.errorhandler(ZeroDivisionError)
def err_Zer(e):
    return '0不能被整除:{}'.format(e)