发布于 2015-08-24 15:52:13 | 229 次阅读 | 评论: 0 | 来源: 网络整理
Flask 有一个方便的 abort()
函数,它可以通过一个 HTTP 出错代码退出 一个请求。它还提供一个包含基本说明的出错页面,页面显示黑白的文本,很朴素。
用户可以根据错误代码或多或少知道发生了什么错误。
以下出错代码是用户常见的,即使应用正常也会出现这些出错代码:
一个出错处理器是一个函数,就像一个视图函数一样。与视图函数不同之处在于出错处理器 在出现错误时被调用,且传递错误。错误大多数是一个 HTTPException
,但是有一个例外:当出现内部服务器错误 时会把异常实例传递给出错处理器。
出错处理器使用 errorhandler()
装饰器注册,注册时应提供异常的 出代码。请记住, Flask 不会 为你设置出错代码,因此请确保在返回响应时,同时提供 HTTP 状态代码。
以下是一个处理 “404 Page Not Found” 异常的示例:
from flask import render_template @app.errorhandler(404) def page_not_found(e): return render_template('404.html'), 404
示例模板:
{% extends "layout.html" %} {% block title %}Page Not Found{% endblock %} {% block body %} <h1>Page Not Found</h1> <p>What you were looking for is just not there. <p><a href="{{ url_for('index') }}">go somewhere nice</a> {% endblock %}