マルチパートファイルのアップロードをアップロード時にファイルのようなオブジェクトとして読み取るためのアクセス権が必要なDjangoアプリケーションがあります。つまり、リクエストオブジェクトへの多かれ少なかれ同期アクセスと、それをチャンクでバイナリに解凍する方法が必要です。データ。残念ながら、Djangoはアップロードをメモリまたは一時ファイルに直接移動することで処理しますが、これは私のユースケースでは機能しません。
アップロードを処理するためにgevent/greenletを使用することを勧めた人もいますが、それが方程式にどのように作用し、それを機能させるためにDjangoと一緒にどのような設定が必要かわかりません。さらに、Djangoの外部で何かを実行すると、アップロードが許可されていることを検証するためにデータベース接続レイヤーを実装する必要があります(チケットIDを使用)。
そうは言っても、どうすればこれを設定できますか?DjangoはWSGIアプリケーションで実行されている必要があり、アップロード用の単一のURLパスをキャプチャするために2番目のWSGIアプリケーションを作成することも推奨されていました。アップロードを同期的に読み取ることができる一方で、基本的にDjangoフレームワークを可能な限り活用したいですか?
(私はPythonライブラリに慣れたばかりでrequests
、かなりの大ファンだと言わざるを得ませんが、サーバーコンテキストでの使用について最初に知ることはありません。)