我想在node.js中使用connect上传图像。使用reference https://www.npmjs.org/package/connect-busboy,我编写了代码:
router.post('/upload', function(req, res) {
req.pipe(req.busboy);
console.log('1')
req.busboy.on('file', function(fieldname, file, filename) {
console.log('2')
var fstream = fs.createWriteStream('../uploads/' + filename);
file.pipe(fstream);
fstream.on('close', function () {
res.redirect('back');
});
});
console.log('4')
});但是,当我试图上传一个图像时,大多数情况下,图像是在给定的路径中上传的,但有时由于js调用的异步性质,req.busboy.on中的代码被跳过,console.log('4')在console.log('1')之后被重复执行。我无法理解为什么会发生这种情况,因为我认为req.busboy.on是使用回调特性实现的,所以每次都应该执行代码。
PLease帮我出来?
编辑1:
Okk...My上面的问题已经解决了,但是现在,我无法使用req.body获取表单的其他字段。它要空了。我也试过穆特,但我不能正常运行。
发布于 2014-08-25 10:01:09
Okk....it是我的错,问题是当我提交空表单时,程序崩溃了。为此,我需要开些支票。
https://stackoverflow.com/questions/25483078
复制相似问题