1

現在、ある種のエントリ用の作成ダイアログが必要な MVC Web アプリケーションに取り組んでいます。

テキスト情報を入力したり、ドキュメント、画像、ビデオなどをアップロードしたりできるはずです。

次の問題が発生します。

ONCE に大量の情報をアップロードするための一般的なベスト プラクティスはありますか? ユーザーが実際に情報を送信することを決定するまで、オブジェクトをデータベースに作成しないでください。

いくつかの解決策を考えました

  • FileAPI を使用してブラウザにアップロードを保存する
  • ファイルを選択するときの即時の AJAX アップロード。しかし、サーバー上のどこにファイルを「キャッシュ」するのでしょうか? オブジェクトを作成しているため、エントリはデータベースにありません。
  • フォームを開くときにデータベース エントリを作成しますか? しかし、これはデータベース内のジャンクになります

どんな提案でも大歓迎です

よろしくお願いします

4

1 に答える 1

2

このアプローチは従うのが良いと思います。

  1. サーバーメモリにファイルバイトを保持するセッションキャッシュがあります。
  2. ユーザーがアップロード ページにアクセスしたら、それをクリアします。
  3. ユーザーがファイルをアップロードすると、サーバー セッション キャッシュにファイル バイトが保存されます。
  4. ユーザーが実際にファイルをアップロードしたい場合(たとえば、ファイルを送信する場合)、ボタンのようなもので、セッション キャッシュからファイルを取得し、データベースにアップロードします。
  5. データベースに保存されたときにセッション キャッシュをクリアします。

ビデオなどの大きなファイルの場合、(ユーザーごとに) 一時フォルダーを作成し、セッション キャッシュの代わりにそのフォルダー内にファイルを保存し、ファイルがデータベースに保存された後にフォルダーをクリア/削除します。

于 2013-06-26T11:21:08.397 に答える