Flask flask http异常捕获

捕获错误

  • errorhandler 装饰器
    • 注册一个错误处理程序,当程序抛出指定错误状态码的时候,就会调用该装饰器所装饰的方法
  • 参数:
    • code_or_exception – HTTP的错误状态码或指定异常
from flask import Flask, abort

app = Flask(__name__)


@app.errorhandler(500)          # 1. 通过http状态码捕获异常信息
def internal_server_error(e):
    return '500: 拜拜了,您咧!'


@app.errorhandler(ZeroDivisionError)    # 通过异常类进行异常捕获
def zero_division_error(e):
    return '除数不能为零 zero'


class APIError(Exception):	# 捕获系统异常或者自定义异常
    pass


@app.errorhandler(APIError)
def error_api(e):
    return "错误: %s" % e


@app.route('/')
def qwq():
    # abort(500)        # 调用internal_server_error
    # a = 2/0             # 调用zero_division_error
    raise APIError('api接口调用参数有误!')      # 调用error_apierror

    return '200: ok'


if __name__ == '__main__':
    app.run(debug=True)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值