Есть массив с ID пользователей. Необходимо через API сайта получить данные этих пользователей. Я делаю это таким образом:
const request = require(`request-promise`);
let ids = [2113811902, 2113811976, 2112091110 /* , ... */];
Promise
.all(ids.map(id => {
return request
.get(`http://site.com/api/user/${id}`)
.then(user => {
return user;
})
// Что бы Promise.all обработал все запросы
// обрабатываем ошибку каждого запросы
// и возвращаем результат с ошибкой
// и с ID, с которым была ошибка
.catch(error => {
return {
error: error.message,
userId: id
};
});
}))
.then(result => {
console.log(result);
})
.catch(error => {
console.error(error.message);
});
Правильный ли я подход использую? Как лучше сделать?