错误
网页访问时总是有时候会出现错误,并返回给你404等错误代码,那么我们今天就来看看flask怎么返回错误代码:
# app.py
from flask import Flask, abort
app = Flask(__name__)
@app.route("/")
def index():
return abort(404)
if __name__ == "__main__":
app.run(debug=True)
打开网页你会看到:
这也就是404的标准页面,使用abort函数可以返回错误代码,以下是一些常见的网页错误代码:
- 200 正确,也就是大多数时候返回的代码
- 400 错误的请求,意味着请求失败
- 404 未找到,一般在访问没有资源的网址时返回
- 405 不允许的方法,使用没有被允许的方法请求时发出
- 500 服务器错误,一般意味着代码错误
错误页面
既然有了错误,当然就有错误页面,上面那个错误页面显然太难看了,所以这时候我们就可以自己定制错误页面,先更改目录结构为:
- static
- test.jpg
- templates
- index.html
- 404.html
- app.py
404.html是我们自己定制的错误页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<p>404</p>
<p>{{ err }}</p>
<button onclick="window.location='/'">返回首页</button>
</body>
</html>
app使用errorhandler函数处理错误:
# app.py
from flask import Flask, render_template, abort
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/info")
def info():
return abort(404)
@app.errorhandler(404)
def four_zero_four(err):
return render_template("404.html", err = err)
if __name__ == "__main__":
app.run(debug=True)
这时候访问info页面,我们就能看到自己定制的错误页面了:
错误页面应该至少提供一个返回首页的链接,大家可以按需求定制。