Flask 自定義錯誤處理 app.errorhandler

需求場景

在默認的http請求中,若是沒有進行特別的自定義需求,那麼出現404錯誤之類的,則會顯示Not Found等信息。前端

若是須要在發生錯誤的時候,再進行一系列的業務處理,這時候就可使用自定義的錯誤處理方法。flask

自定義錯誤方法示例

# 定義錯誤處理的方法
@app.errorhandler(404)
def handle_404_error(err):
    """自定義的處理錯誤方法"""
    # 這個函數的返回值會是前端用戶看到的最終結果
    return "出現了404錯誤, 錯誤信息:%s" % err
複製代碼

完整代碼以下:bash

from flask import Flask, request, abort

# 實例化app
app = Flask(import_name=__name__)

@app.route('/login', methods=["GET","POST"])
def login():

    user_name = ''
    user_pwd = ''

    if user_name != 'libai' and user_pwd != '123':
        abort(404)

    return "login sucess"

# 定義錯誤處理的方法
@app.errorhandler(404)
def handle_404_error(err):
    """自定義的處理錯誤方法"""
    # 這個函數的返回值會是前端用戶看到的最終結果
    return "出現了404錯誤, 錯誤信息:%s" % err

if __name__ == '__main__':
    app.run(debug=True)
複製代碼

首先來訪問/login視圖函數,查看abort方法返回的404錯誤會不會以自定義的錯誤顯示,以下:app

若是訪問任意一個不存在的url地址,看看是否是也是這個自定義的錯誤信息,以下:函數

相關文章
相關標籤/搜索