2

Django アプリケーションで、リクエスト ヘッダーやセッション データに基づいてアップロードを受け入れるか拒否するかを決定したいと考えています。アップロードが拒否される場合は、とにかく拒否される可能性のある大きなファイルを受信して​​保存する時間を無駄にするのではなく、アプリに接続をリセットしてもらいたい.

Django ミドルウェアは有望に見えましたが、よく調べてみると、リクエストがミドルウェアに到達するまでにはすでに手遅れであり、アップロード全体がどこかに (通常は RAM またはディスク) バッファリングされていたようです。

これを達成するために使用できる他のフックや設定はありますか?

4

1 に答える 1

1

ファイル アップロード ハンドラは、探しているものです: http://docs.djangoproject.com/en/dev/topics/http/file-uploads/#modifying-upload-handlers-on-the-fly

編集: ファイル アップロード ハンドラー コードを見ると、リクエスト オブジェクト全体ではなく、request.META のみが渡されているようです。これには、必要な情報が含まれている場合と含まれていない場合があります。

一方、理論的には、Cookie に保存されているセッション ID からセッション データを再構築できます。

于 2010-01-17T23:28:54.270 に答える