缺少从 sails.js 文件上传返回的数据

missing returned data from sails.js file upload

我在 sails.js 应用程序中编写了一个简单的函数来处理文件上传。

let upload = file.upload((err, uploadedFiles) => {
  if (err) {
    return res.serverError(err);
  } else {
    return res.send({ data: uploadedFiles });
  }
});

上传完成后,我被重定向到显示原始 json 的页面,其中包含上传的文件信息(包括路径)。

raw json response

当我 console.log(upload) 时,我期待的是相同的信息,但是我得到的是 writestream。

console.log output

这对我来说是个问题,因为我希望能够从对象中提取文件名并在程序的另一部分中使用它,但我不能这样做,因为我只能访问是写入流。

我已经尝试使用 async/await 和回调,但似乎无法解决我的问题。

希望有人能帮助我!

谢谢

风帆Gitter上的热心人建议我使用这个包,支持async/await:https://www.npmjs.com/package/sails-hook-uploads

我使用以下代码对其进行了测试并且它有效:

let upload = await sails
  .uploadOne(file, {
    maxBytes: 3000000,
  })
  .intercept('E_EXCEEDS_UPLOAD_LIMIT', 'tooBig')
  .intercept(
    (err) => new Error('The photo upload failed: ' + util.inspect(err))
  );