busboy を介していくつかのファイルをアップロードすると、イベントで問題が発生します。私のコード:
app.post('/multiupload', function(req, res) {
var fstream;
var files = [];
var busboy = new Busboy({headers: req.headers});
busboy.on('file', function (fieldname, file, filename) {
fstream = fs.createWriteStream(__dirname + '/../static/uploaded/' + filename);
file.pipe(fstream);
fstream.on('close', function(){
console.log('file ' + filename + ' uploaded');
files.push(filename);
});
});
busboy.on('end', function(){console.log('END')});
busboy.on('finish', function(){
console.log('finish, files uploaded ', files);
res.redirect('back');
});
req.pipe(busboy);
});
マイフォーム(ジェイドテンプレート)
form(method="POST", action="/multiupload" name="multiupload_form", enctype="multipart/form-data")
input(type='file' name='multifile', multiple)
input(type="submit" value="Upload!")
イベント 'end' は無視されました。ファイルのアップロードの途中で終了します。どこが間違っていますか?
サーバー コンソール レポート:
file 111.gz uploaded
file 222.mp4 uploaded
file 333.jpg uploaded
finish, files uploaded [ '111.gz', '222.mp4', '333.jpg' ]
file 444 uploaded
file 555.jpg uploaded