CNode

async的eachLimit方法内使用superagent的疑惑

问答
HHarvesty发布于12 年前最后回复11 年前2 回复5487 浏览0 收藏

在抓网页遇到这样一个问题:

async.eachLimit(dataArr, 100,
    function(item, callback) {
        superagent
            .get('url')
            .query({ act: item })
            .end(function(err,res){
                if (err) {
                    return console.error("someErr: ", err);
                }
                var idata = JSON.parse(res.text);
                idata = idata.toString() + "\n";
                fs.appendFile('data.txt', idata, function (err) {
                  if (err) throw err;
                  console.log('The "data to append" was appended to file!');
                });
            });
    },
    function(err) {
        log('Get err: ' + err);
    });

每次只获取100个数据后,程序就结束了,没有继续下一批数据获取。不太明白什么原因,希望大侠指点!

查看回复

回复 (2)

H
holyselina#1·11 年前

没有调用callback函数,在end的时候调用一下callback即可

H
huguangju#2·11 年前
参与回复
登录后即可参与回复。登录