2011-12-19 11 views
2

本当に大きい3 +ギグがあれば、受信したいファイルのバイト範囲を知っているので、JavaScriptを使用してファイルの一部だけをクライアントからサーバーにストリーミングすることができます。JavaScriptを使用してファイルの一部をストリームするにはどうすればよいですか?

私は、クライアントからファイルの特定の部分を取得する必要があるRuby on Railsアプリケーションを持っています。一人のユーザが私がJavaを使ってこれを行うことができると述べた。

編集:読んだ後、ファイルをスライスすることによるHTML5が最良の賭けとなることがあります。 http://www.html5rocks.com/en/tutorials/file/dndfiles/

+0

あなたが試みていることと試したことの詳細が必要です。音楽をストリーミングしようとしていますか?ビデオ?スライドショー?長い本? – Dave

+0

どのようなファイルですか? –

+0

ストリーミングコンテンツに使用できるAJAX Push Engineというライブラリがあります。あなたはそれをチェックしたいかもしれません。 JavaScriptを使用する予定がある場合は、バックエンドにRingoJSを使用することをお勧めします。お役に立てれば。 –

答えて

2

基本的な答えは、Webサーバーがサポートしていると仮定して、はいです。

Range HTTP headerを使用して、ファイルの一部のみを要求することができます(例:Range: bytes=1000-2000)。これがあなたのために働くかどうかは、あなたが達成しようとしていることに大きく依存します。

詳細については、this answerを参照してください。

+0

これは、サーバーの代わりにクライアントからデータを取得する必要があることを除いて、私が必要とするように見えます。しかし、ありがとう。 –

1

いいえ、実際は(少なくとも今は、とにかくではありません)。 Javascriptに公開されているファイル処理機能は、ファイルを処理してサーバーに返す処理(ファイルの一部のみを含むものを含む)を行うときに、本当に有用な何らかのクライアントサイドを実行するほど強力ではありません。 javascriptのクライアント側のファイル処理を改善するためのw3c仕様が提案されていますが、主要なブラウザのどれも、このケースを実際には十分に処理するのに十分なレベルまで実装していません。

私は現在、同様のニーズを持つプロジェクトに取り組んでいます。これを調べたときに見つかった唯一のオプションは、Flashを使用するか、Javaを使用することでした。私たちはフラッシュよりもJavaに慣れているので、私たちはそのルートを使いました。

私たちは現在、GroovyとGriffonフレームワークを使用しています。また、サーバーサイドの部分にはGrailsも使用しています。 Griffonは、デスクトップとWebstart、アプレットとの対話から解放され、Groovy上に構築されて以来、Swing DSLを活用できるため、Swingを書くのに苦労することはありません。

関連する問題