2

ドキュメントを読み、問題をグーグルで調べましたが、リクエストを終了してエラーページを表示せずにFlaskでエラーを処理する方法を見つけられないようです。

私が処理したいエラーはwerkzeug.exceptions.RequestEntityTooLarge、ファイルのアップロードが指定された制限を超えたときに発生するものです。flask.request.files理想的には、アップロードされたファイルがアップロードの最大サイズを超えたことを示す要素を辞書に追加できるようにしたいと考えています。エラーは、ユーザーが再試行できるように、元のフォームにインラインで表示される可能性があります。

これはFlaskでも可能ですか?

4

1 に答える 1

2

多分無理だと思いました。

max_content_length のしきい値を超えると接続を終了し、ファイルのアップロード後に送信される他のフォーム データを破棄する必要があるため、サーバーが要求全体を受信することはできません。サーバーは、HTTP 413 ステータス コードで接続をリセットします。関数を登録して HTTP 413 エラーを処理する (そしておそらくカスタム エラー ページを返す) ことは可能であるように見えますが、これは Flask では機能しません。これはバグだと思います。

于 2012-04-22T15:36:39.993 に答える