使用Sails.js和Skipper取消保存上传的文件

时间:2015-11-10 16:22:42

标签: node.js sails.js skipper

当我们因为保存文件而检测到一些约束时,是否可以取消跳过上传功能中的文件保存?

我有一段这样的代码:

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这样的名称保存上传的文件。 但是如果保存到数据库中没有成功(例如由于验证错误),如何取消磁盘上的保存文件并进一步传递该错误?

0 个答案:

没有答案