当我们因为保存文件而检测到一些约束时,是否可以取消跳过上传功能中的文件保存?
我有一段这样的代码:
req
.file("multimedia")
.upload({
// Destination directory
dirname : dirName,
// Maximum image size in bytes
maxBytes : MAX_IMG_SIZE,
saveAs : function(__newFileStream, cb) {
Blueprint.create(req, res, function(err, newInstance) {
if (err) {
// This call breaks down the application
// This is the place where saving file should be canceled
cb(err);
} else {
// Image name will be image Id
cb(null, newInstance.id.toString());
}
});
}
},
function whenDone(err, uploadedFiles) {
if (err) {
res.negotiate(err);
} else {
res.ok();
}
});
在saveAs函数中,我首先将记录保存在数据库中,然后使用从保存的记录返回的id这样的名称保存上传的文件。 但是如果保存到数据库中没有成功(例如由于验证错误),如何取消磁盘上的保存文件并进一步传递该错误?