私はサードパーティのAPIを呼び出しています。すべての返品を収集し、APIで1つの配列として返すのに問題があります。私は通話を成功させていることがわかり、彼らは帰ってきています。 asynchのため、最後の配列は、データが格納される前に戻っています。これを処理するためのエレガントなソリューションはありますか?配列内にApiが返される
var itemIds = ['1','2','3','4','5','6']
exports.getItemData = function getItemData(req, res) {
var items = [];
var errors = [];
for(var itemId in itemIds) {
var options = {
uri: itemEndpoint + itemIds[itemId] +'/',
json: true
};
RequestPromise(options).then(function (item){
console.log(item);
items.push(item);
}).catch(function(err){
console.log(err)
errors.push(err);
});
};
res.type('application/json');
res.json(items);
};
['Promise.all'](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise/all)。 –