async.mapLimit用法来发出多个请求

我有这样的路线:

async.mapLimit(urls, 10, getCertificatesFromPage, callback) 

其中,urls是一个包含url的数组,getCertificatesFromPage:

 getCertificatesFromPage = (url, callback) -> request url, (err, res, html) -> $ = cheerio.load(html) allRows = $('div.search-result-shop') objCollector = [] allRows.each () -> links = $(this).find('a') obj = companyName: $(this).find('.companyname').text() pageDetailsUrl: '' link: '' for link in links extractedLink = link.attribs.href if extractedLink.includes('http') obj.link = extractedLink else obj.pageDetailsUrl = nameSpace.pageName + extractedLink objCollector.push obj return objCollector 

这不工作,因为我需要从每个页面收集所有对象10 10页,但我只收到50 * 10的链接还有更多

我能用这个代码做些什么来使它工作?

 getCertificatesFromPage = (url, callback) -> 

您不在getCertificatesFromPage函数中调用callback 。 没有这个,框架就无法知道工作何时完成。