ファイルをアップロードするフラスコアプリケーションを実装しようとしています。このファイルは非常に大きくなる可能性があります。たとえば、ほぼ2Gのサイズです。Flaskで大きなファイルをアップロード
私はこのように、サーバ側の処理機能を終了しました:
@app.route("/upload/<filename>", methods=["POST", "PUT"])
def upload_process(filename):
filename = secure_filename(filename)
fileFullPath = os.path.join(application.config['UPLOAD_FOLDER'], filename)
with open(fileFullPath, "wb") as f:
chunk_size = 4096
while True:
chunk = flask.request.stream.read(chunk_size)
if len(chunk) == 0:
return
f.write(chunk)
return jsonify({'filename': filename})
ブラウザ側に関しては、私はファイルを提出するから、ユーザーに与える必要があります。一度に1つのファイル。アップロードプロセスを示すプログレスバーを表示します。 しかし、私はブラウザのサイドコードについては考えていません。 JavaScriptコードを使用してアップロードを開始し、ステータスを表示するにはどうすればよいですか?
ご協力いただきありがとうございます。 jQuery-File-Uploadは、私のアプリケーションにとって良い助けとなります。 jQuery-File-Uploadが、小さなファイルに分割する代わりに、ファイル全体をアップロードするためのストリームポスト/プット操作をサポートしているかどうか、どうすればいいのか教えてください。 –