我想上传一个文件,然后将该文件传递到谷歌驱动器!我使用的是服务生和节点谷歌驱动器客户端!
我想将文件流从busboy传递到!
我不想创建一个临时文件,然后创建一个fs.createReadStream来读取这个临时文件,我希望它能够完全使用内存,而不需要任何IO操作。
知道怎么做吗?
busboy.on('file', function(fieldname, file, filename, encoding, mimetype){
console.log('File [' + fieldname + ']: filename: ' + filename + ', encoding: ' + encoding + ', mimetype: ' + mimetype);
file.on('data', function(data){
//Need to store all the data here and pass it back at file.on('end')
});
file.on('end', function(){
drive.files.insert({
resource: {
title: '123.jpg',
mimeType: 'image/jpeg',
parents: [{
kind: "drive#fileLink",
id: "0B0qG802x7G4bM3gyUll6MmVpR0k"
}]
},
media: {
mimeType: 'image/jpeg',
body: //how to pass stream from busboy to here???
}
}, function(err, data){
});
})
})发布于 2014-11-11 07:25:23
根据 module documentation,可以将body设置为可读流或字符串。因此,您的代码可能如下所示:
busboy.on('file', function(fieldname, file, filename, encoding, mimetype){
console.log('File [' + fieldname + ']: filename: ' + filename + ', encoding: ' + encoding + ', mimetype: ' + mimetype);
drive.files.insert({
resource: {
title: '123.jpg',
mimeType: 'image/jpeg',
parents: [{
kind: "drive#fileLink",
id: "0B0qG802x7G4bM3gyUll6MmVpR0k"
}]
},
media: {
mimeType: 'image/jpeg',
body: file
}
}, function(err, data){
});
})https://stackoverflow.com/questions/26859563
复制相似问题