Formidable から Mongo の GridFS に直接アップロードをストリーミングしようとしています。
データを書き込む前に GridStore を開く必要がありますが、ストアを開くのに時間がかかるため、すでに解析されていないデータが多すぎて失敗します。
GridStore を準備して、着信アップロードを処理するにはどうすればよいですか?
function upload (request, response, next, options) {
var form = new Formidable.IncomingForm();
var store = new Mongo.GridStore(options.mongoose.connection.db, new ObjectID, 'w+', {
root: 'store',
chunk_size: 1024 * 64
} );
form.onPart = function (part) {
if(!part.filename){
form.handlePart(part);
return;
}
part.on('data', function(buffer){
store.write(buffer);
});
part.on('end', function() {
store.close();
});
};
store.open( function (error, store) {
form.parse(request);
});
response.send();
}