2012-04-22 50 views
2

我已經通讀文檔並搜索了我的問題,但我似乎無法找出一種方法來處理Flask中的錯誤,而無需終止請求並顯示錯誤頁面。在Flask中捕獲錯誤,但正常繼續請求

我想處理的錯誤是werkzeug.exceptions.RequestEntityTooLarge,當文件上傳超過指定限制時會引發此錯誤。理想情況下,我希望能夠向flask.request.files字典中添加一個元素,指示上傳的文件超出了最大上傳大小。然後可以將錯誤與原始表單內聯,以便用戶可以再次嘗試。

這甚至可能在燒瓶?

回答

2

我想這可能是不可能的。

服務器無法接收整個請求,因爲一旦max_content_length閾值被傳遞,它必須終止連接,並放棄在文件上傳後發送的任何其他表單數據。服務器使用HTTP 413狀態碼重置連接。雖然看起來可以註冊一個函數來處理HTTP 413錯誤(並且可能返回一個自定義錯誤頁面),但這在Flask中不起作用。我認爲這是一個錯誤。

相關問題