使用Nodejs从Mongodb GridFS访问多个图像时出错:发送后无法设置标头

时间:2015-08-26 10:20:14

标签: node.js mongodb gridfs gridfs-stream

var newid = [];
var newid = ["55dd605d636145b80f52b85e","55dd652b717d72200538cb72","55dd8f7bbc96c06808a245ae"];

           for(var i = 0;i<=2;i++)
           {
           var fileId = mongoose.Types.ObjectId(newid[i]);
           var gridStore = new mongodb.GridStore(db, fileId, 'r');

            gridStore.open(function (err, gridStore) {
                if (err) {
                    res.writeHead(500);
                    return res.end();
                }
                //return
                res.writeHead(200, {'Content-Type': 'image/png'});
                gridStore.stream(true).on('end', function() {
                }).pipe(res);

  });
  }

我使用上面的代码从GridFS获取所有图像。当我为单个Id运行它时,它可以工作。但是当我尝试从数组访问时,它会抛出错误,因为&#34;无法在发送后设置标头&#34;。我对mongodb很新。请帮帮我。

0 个答案:

没有答案