ない専門家ではなく、私はそれを試してみると、あなたのために働い例を得ませんでした。あなたはあなたの質問に十分な情報を提供していないので、私は最初から始めます。
私は公式のgithubリポジトリに従い、サンプルを提供しました。ファイルチャンクを特定のディレクトリに保存するためにいくつかの調整を加えてから、それらのチャンクを合わせて調整し、不要なものを削除するように調整しましたその後のチャンク。明らかに、これらの調整は、コードや他の場所で提供されているヒントです。 Appearntly flow.jsも同様のメカニズム(完全にはわからない)を使用しています。
私は基本的には、ブラウザからファイルをアップロードして、ローカルに保存することができるようにするために、サンプルの一つでapp.js
を変更する必要がありました。
- パスディレクトリの場所は、チャンクがアップロードされている場合、あなたは書き込みストリームを作成し、一緒にチャンクをステッチし、それらを保存するために、再開可能使用するようにファイルのチャンクが
- が必要条件とコマンドを提供する追加すべき場所を再開可能にします元のファイルとして。
:
- 最後に削除するすべてのチャンク
指示は明示アプリは、(あなたが公式githubのサンプルをチェックアウトし、変更を加えたり、指示の下に従うことができますすることができます)作業を取得するためにgistを使用します
- コピー/
package.json
を貼り付け得るためにNPMをインストールしない
- ディレクトリに要旨をapp.js、resumable.jsと再開可能-のNode.jsを作成したディレクトリ
- を作成します。モジュール(または手動で
npm install
これらexpress
、path
、fs
、connect-multiparty
)
- がメインのappディレクトリに
uploads
ディレクトリを作成し、それが書き込み可能であることを確認して
- コピー/の形で
icons
が含まれていhereからpublic
ディレクトリ過去.pngファイルで、style.css
とindex.html
アップロード用
49
または50
のインデックスのtarget
値を変更します。あなたのサーバアドレスにコピーした公開ディレクトリのhtmlを私のケースでhttp://localhost:3000/upload
- index.htmlでチャンクサイズ、同時チャンクアップロード数などを微調整することはできますが、実際にはチャンクを3から4に変更しました)
- 上記の作業をすべて完了したら、あなたはうまく行きます。
- 実行アプリはすなわちnodemon app.jsまたはノードは、サーバーのアドレスまたはhttp://localhost:3000/uploadへ
- 移動をapp.jsし、以下に示すように、あなたは、レンダリングのindex.htmlが表示されます。

A

- (チャンクを除去する。終了に気付く)以下コンソールログ最後にアップロードディレクトリにimage2.jpg
があります。
TL; DRは
あなたはアップロードしResumable.js経由でアップロードされたファイルを保存できるようにapp.jsとのindex.htmlファイルに次の調整を必要としています。
のindex.htmlはどこへresumable
ディレクトリを送信するためにhttp://localhost:3000/upload
var r = new Resumable({
target:'http://localhost:3000/upload',
chunkSize:1*1024*1024,
simultaneousUploads:4,
testChunks:false,
throttleProgressCallbacks:1
});
がが調整されているapp.js私の場合には、サーバーのURLにそれを指すように目標値を変更するために調整されていますファイルを保存します(一番上)。
var resumable = require('./resumable-node.js')(__dirname + "/uploads");
私もgistを参照してくださいapp.post('/uploads',...)
の内容を変更するapp.jsを微調整。
// Handle uploads through Resumable.js
app.post('/upload', function(req, res){
resumable.post(req, function(status, filename, original_filename, identifier){
if (status === 'done') {
var stream = fs.createWriteStream('./uploads/' + filename);
//stich the chunks
resumable.write(identifier, stream);
stream.on('data', function(data){});
stream.on('end', function(){});
//delete chunks
resumable.clean(identifier);
}
res.send(status, {
// NOTE: Uncomment this funciton to enable cross-domain request.
//'Access-Control-Allow-Origin': '*'
});
});
});
そして最後にapp.jsへの最後の微調整は私が、他の人と同じディレクトリにファイルresumable.jsを移動し、最後のルートハンドラー、次のファイル
s.createReadStream("./resumable.js").pipe(res);
であります私はcreateReadStreamがそれを見つけるために場所を変更する必要がありました。
どれgithubの例は素晴らしいだろう... – Nodedeveloper101
[OK]を、ファイル自体が「req.files.file」に位置しています...だから私は、ファイルのthats javascriptの変数を持っている... varファイル= req.files.file。 ....この変数をサーバー上の特定のディレクトリにファイルとして保存するにはどうすればよいですか? – Nodedeveloper101
「fs」を使って.txtファイルをサーバーに書き込む方法を知りました。だから私はサーバーにファイルを書き込むことができます。そして、私はそのファイルに関するconsole.log()データを扱うことができます。しかし、実際にはファイルであるfs.writeFile(ファイル名、ファイル、コールバック)にどのオブジェクトを渡す必要があるのかわからない...今は[オブジェクトオブジェクト] – Nodedeveloper101