我需要从List Off链接中获取一些数据并保存到MongoDB.
这是我的链接数组,可以是3到10个链接.
const links = ['link1', 'link2', 'link3', 'link4']
我的要求是这样的:
async function fetchAll() {
let i = 0;
const results = await Promise.all(links
.map(
(url) => {
return request({
uri: url,
method: 'GET',
json: true,
}, function (error, response, body) {
if(!error) {
generateItems(body).then((dt) => {
saveItemsToDB(dt).then((rp) => {
i++
if (i === links.length) {
console.log('last request')
}
})
})
} else {
i++;
console.log(i, ' error')
}
})
}
))
}
async function generateItems(response) {//parse response & generate data}
async function saveItemsToDB(items) {//saving data to mongodb}
我必须确保数据已保存到MongoDB中,然后运行下一个请求.
But the next request runing before the saveItemsToDB function finished个