我是 Nodejs 新手,无法理解这个问题:我尝试对数组运行 describe 函数,而 AWS 函数似乎在 main 函数完成后运行。
这是主要功能:(遍历 ACM ARN 列表并检查状态)
var checkCertStatus = function(resolveObj){
var promise = new Promise(function(resolve, reject){
console.log('1');
var retObj='';
resolveObj.Items.forEach(function(element) {
var certDescribeParams = {
CertificateArn: element.sslCertId
};
console.log('2');
acm.describeCertificate(certDescribeParams, function(err, data) {
if(err) reject(new Error(err));
else {
console.log(data.Certificate.DomainName + ': ' + data.Certificate.Status);
retObj+=data;
}
});
});
console.log('3');
resolve(retObj);
return promise;
})
}
根据调试日志,假设有 2 项需要处理,我得到的是:
1
2
2
3
example.com: ISSUED
example2.com: ISSUED
基本上,我需要将此结果传递给链中的下一个函数(带有承诺和东西)。