0
複数の約束事を処理したい、たとえばkouta APIが複数のサイトを返す場合、私はサイトでループを作成してカテゴリを1つずつ取得します。エラー処理のforループで複数の約束事を処理する
ノードコード:
request({
url: 'https://cbatest.kounta.com/v1/companies/20155/sites.json',
headers: header_data,
json: requestData,
method: 'GET',
}, function (err, response, body) {
var site_list = body;
//res.send(site_list);
var promises = [];
for (let i = 0; i < site_list.length; i++) {
var cat_list = new Promise(function (resolve, reject) {
var site_id = site_list[i].id;
var category_arr = [];
request({
url: 'https://cbatest.kounta.com/v1/companies/20155/sites/' + site_id + '/categories.json',
headers: header_data,
json: requestData,
method: 'GET',
}, function (err, response, body) {
var category_list = body;
resolve(category_list);
});
});
cat_list.then(function (result) {
promises.push(result);
console.log(promises);
res.send(promises)
}).catch(function (err) {
console.log(err);
})
}
});
問題:にconsole.log(約束)。 last idとres.send(約束)のためだけに働きます。 1回だけ作業してください。私は何が足りないのですか?
ありがとうございます。