この質問に関連して、ASP.NETアプリケーションからAmazon S3にファイルを直接アップロードします。これを実行してプログレスバーを表示する方法はありますか?
- - 編集 - -
2日後、まだ直接的な方法では運がありません。有望に見えるが無料ではないものを1つ見つけました:http ://www.flajaxian.com/
フラッシュを使用して、プログレスバーを使用してS3に直接アップロードします。
この質問に関連して、ASP.NETアプリケーションからAmazon S3にファイルを直接アップロードします。これを実行してプログレスバーを表示する方法はありますか?
- - 編集 - -
2日後、まだ直接的な方法では運がありません。有望に見えるが無料ではないものを1つ見つけました:http ://www.flajaxian.com/
フラッシュを使用して、プログレスバーを使用してS3に直接アップロードします。
私も解決策を探しています。ひょっとしたら、これが役に立つかもしれませんが、
AWS Dev Commnity から しかし、多くの言語 (PHP、Java) では、大きなファイルの場合、言語環境が大きなファイルのチャンクを次々に取得するストリームを使用する必要があります (中央のメモリを膨大な量でいっぱいにするために)アップロードに必要な S3 の http POST のデータの。
ストリームの良いところは、次のチャンクが読み込まれるたびにコールバックが呼び出され、(https の意味で) データを S3 にさらに PUT することです。このコールバックを使用して、進行状況を計算し、クライアント UI に表示できます。
libcurl のドキュメントを参照して、これらすべてがどのように機能するかを詳しく確認してください。
更新: 2 つの簡単なオプションがあるようです。
個人的にはサードパーティの拡張機能 (Flash、Java) を使用してアプリを機能させるのは嫌いですが、別の方法は見つかりませんでした。
ブラウザのサポートがないことを気にしない場合は、html5 javascript を使用できます (この記事では Firefox と Chrome のみ)。例: https://developer.mozilla.org/en/Using_files_from_web_applications
これは AWS に固有のものではありませんが、近づくのに役立つかもしれません。
もう 1 つのアプローチは、プログレス バーを備えた perl/php ハイブリッド ソリューションであるUber Uploader ( http://uber-uploader.sourceforge.net/ ) のようなものを使用することです。ファイルをサーバーにアップロードするだけで、サーバーはバックグラウンドでファイルを最終的な宛先に FTP 送信します。これは余分なステップですが、S3 に送信する前に必要な処理やエンコードなどを行う時間が与えられます。