我使用connect-busboy来处理文件上传,这是代码
req.busboy.on('file', function(fieldname, file, filename, encoding, mimetype) {
var type = mimetype.split('/')[1]
var newName = (new Date()).valueOf();
var saveTo = path.join(__dirname, '../../userUpload',req.user._id+'', newName+'.'+type);
file.pipe(fs.createWriteStream(saveTo,{flags: 'w'}));
});
如您所见,我尝试将上传的文件保存在动态目录(以user._id命名)和新文件名中;
但它给我一个错误说
"Error: ENOENT, open '\userUpload\53a65fde4e22939811aa306d\1404636837084.mp4' "
但是当我首先手动创建user._id目录时,它会起作用,所以fs.createWriteStream无法处理动态目录吗?
我该怎么做?
答案 0 :(得分:1)
您尝试阅读的目录不存在!确保路径存在。