Flask錯誤處理:404、500錯誤與自定義響應
在Web開發中,用戶訪問錯誤頁面或服務器內部出錯是常見問題,直接返回默認錯誤頁面(如“404 Not Found”)會降低用戶體驗。Flask提供了靈活的錯誤處理機制,通過`@app.errorhandler`裝飾器可自定義錯誤響應,提升用戶體驗。 默認情況下,Flask對404(頁面不存在)返回純文本提示,500(服務器錯誤)顯示詳細堆棧信息,用戶難以理解。通過`@app.errorhandler`,可針對不同錯誤碼定義自定義響應: - **404錯誤**:返回友好HTML頁面,如“頁面不見了”並引導返回首頁; - **500錯誤**:返回“服務器開小差”提示,同樣帶返回首頁鏈接; - **API場景**:返回JSON格式錯誤信息,如`{"status":"error","code":404,"message":"用戶不存在"}`。 核心是`@app.errorhandler`裝飾器,支持HTML或JSON等格式的錯誤響應,可根據項目需求靈活調整,既避免用戶因錯誤提示流失,又便於調試。
閱讀全文