缺少从 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))
);
我在 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))
);