知識點: 一、abort()函數 二、自定義狀態碼前端
咱們在寫視圖函數時,會對前端傳遞過來的參數進行校驗,若是校驗不過,會給前端返回一些特定的異常信息。在Flask中,abort() 函數能夠當即終止視圖函數的執行,而且把相對應的錯誤信息返回給前端。python
from flask import Flask, abort
app = Flask(__name__)
@app.route('/login/<phone>')
def index(phone):
if phone != '123456':
abort(502) # 當即中止視圖函數執行,並把異常返回
return phone
if __name__ == '__main__':
# 0.0.0.0表明任何能表明這臺機器的地址均可以訪問
app.run(host='0.0.0.0', port=5000, debug=True) # 運行程序
複製代碼
咱們瀏覽器調試一下: flask
狀態代碼有三位數字組成,第一個數字定義了響應的類別,共分五種類別:瀏覽器
200 OK //客戶端請求成功
400 Bad Request //客戶端請求有語法錯誤,不能被服務器所理解
401 Unauthorized //請求未經受權,這個狀態代碼必須和WWW-Authenticate報頭域一塊兒使用
403 Forbidden //服務器收到請求,可是拒絕提供服務
404 Not Found //請求資源不存在,eg:輸入了錯誤的URL
500 Internal Server Error //服務器發生不可預期的錯誤
503 Server Unavailable //服務器當前不能處理客戶端的請求,一段時間後可能恢復正常
複製代碼
有時候咱們感受默認的狀態碼信息對於用戶提示不友好,咱們能夠默認的狀態碼信息改爲咱們本身想要的。咱們在項目中加上以下函數:bash
# 自定義502狀態碼信息
@app.errorhandler(502)
def handle_502_error(error): # error:錯誤信息
return "服務器泡妞去了"
複製代碼
咱們瀏覽器調試一下: 服務器