异常处理
http异常主动抛出
- 方法
抛出一个给定状态代码的HTTPException或指定响应,例如想要用一个页面未找到异常来终止请求,你可以调用abort(404)。 - 参数:
代码—> HTTP的错误状态码
# abort(404)
abort(500)
注: 抛出状态码的话,只能抛出HTTP协议的错误状态码
捕捉错误
-
errorhandler装饰器
注册一个错误处理程序,当程序抛出指定错误状态码的时候,就会调用该装饰器所装饰的方法
-
参数:
code_or_exception – HTTP的错误状态码或指定异常
-
例如统一处理状态码为500的错误给用户友好的提示:
@app.errorhandler(500)
def internal_server_error(e):
return '服务器搬家了'
- 捕获指定异常
@app.errorhandler(ZeroDivisionError)
def zero_division_error(e):
return '除数不能为0'