在mongodb中添加大量数据时不重定向nodejs页面

时间:2014-01-15 05:15:47

标签: node.js mongodb asyncsocket

我通过循环将重量数据添加到mongo db中,如下所示

function updateData() {
    for (l = 0; l < 10000 ,l++) {
        db.fbpost.update({pagename:page,'post.id': postsId},{'post.data': posts.data[l]}},{upsert: true},function (err,data){
            if (err) {
                 console.log('could not fetch post from after update', page, err);
            }                   
        })
    }
}

我从post方法链接调用此函数,而上面的代码将数据插入db,并且平行地我无法重定向其他链接,它被循环阻止。所以我试着让for循环像下面那样运行async,但是即使它连续循环而又不允许我访问其他页面也无法帮助。

function forloop(){
            if(i < posts.data.length){
                i++;
                setTimeout(forloop(), 0);
            }
        }
        forloop();

1 个答案:

答案 0 :(得分:0)

我想你已经发送了Location标题。检查您是否错过response.end();

var http = require('http');
http.createServer(function (req, res) {

  res.writeHead(302, {'Location': 'http://google.com'});
  res.end(); // End the response

}).listen(1337);