Node JS Promise.all返回值

时间:2018-07-18 20:37:36

标签: node.js asynchronous amazon-s3 promise aws-lambda

返回Promise.all内部的值

嗨,我正在编写一个函数,将三个诺言中的值加载到数组中,但是我似乎无法解决从诺言之外获取值的问题。

需要回调中的字段。

有没有人找到解决此问题的方法。

var firstPromise = s3.getObject({Bucket: bucket, Key: key1}).promise()
    .then(function(data){
        return data;
    })
    .catch(function(err) {
        console.log(err);
    });
var secondPromise = s3.getObject({Bucket: bucket, Key: key2}).promise()
    .then(function(data){
        return data;
    })
    .catch(function(err) {
        console.log(err);
    });
var thirdPromise = s3.getObject({Bucket: bucket, Key: key3}).promise()
    .then(function(data){
        return data;
    })
    .catch(function(err) {
        console.log(err);
    });

Promise.all([firstPromise, secondPromise, thirdPromise])
    .then(function(values){
        logger.debug("Value 0 is " + values[0].Body.toString());
        logger.debug("Value 1 is " + values[1].Body.toString());

        callback(null,values);
    });

0 个答案:

没有答案