我有以下代码从AWS S3中检索对象。将从承诺返回的数据分配给变量对象
我该如何将承诺返回的数据分配给files
对象?
我希望能够将files
变量传递给下一个.then
中的另一个方法,因为我想访问数据。
var getFiles = function getFiles(files) {
return Promise.all(files.map(function (file) {
return new Promise((resolve, reject) => {
var params = {
Bucket: 'my-bucket',
Key: file.key
};
s3.getObject(params, function (err, data) {
if (err) reject(err);
else {
resolve(data);
}
});
});
}));
};
var fileNames = ['test.jpg', 'background.jpg'];
var files = fileNames.map(function(fileName) {
return {
key: fileName
}
});
getFiles(files)
.then(function(res) {
console.log(res)
})
.catch(function(res) {
console.log(res);
});
将'then'中的'console.log(res)'改为'files = res' – lilezek