Flask 重定向和錯(cuò)誤

2021-08-10 11:45 更新

你可以用 redirect() 函數(shù)把用戶重定向到其它地方。放棄請(qǐng) 求并返回錯(cuò)誤代碼,用 abort() 函數(shù)。這里是一個(gè)它們?nèi)绾?使用的例子:

from flask import abort, redirect, url_for

@app.route('/')
def index():
    return redirect(url_for('login'))

@app.route('/login')
def login():
    abort(401)
    this_is_never_executed()

這是一個(gè)相當(dāng)無意義的例子因?yàn)橛脩魰?huì)從主頁(yè)重定向到一個(gè)不能訪問的頁(yè)面 (401 意味著禁止訪問),但是它展示了重定向是如何工作的。

默認(rèn)情況下,錯(cuò)誤代碼會(huì)顯示一個(gè)黑白的錯(cuò)誤頁(yè)面。如果你要定制錯(cuò)誤頁(yè)面, 可以使用 errorhandler() 裝飾器:

from flask import render_template

@app.errorhandler(404)
def page_not_found(error):
    return render_template('page_not_found.html'), 404

注意 render_template() 調(diào)用之后的 404 。這告訴 Flask,該頁(yè)的錯(cuò)誤代碼是 404 ,即沒有找到。默認(rèn)為 200,也就是一切 正常。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)