我试图将MongoDB中的数据加载到我的express中,最终在我的html中显示使用angular。现在我已经开始使用它来获取数据,但这仅适用于数据库中的一条记录。如果我创建多个记录,它会在控制台中出现以下错误:
"发送标题后不能发送标题"
这是我的" get"请求快递:
router.get('/getdata', function(req, res, next){
var findDocuments = function(db, callback) {
var cursor = db.collection('userdata').find({});
cursor.each(function(err, doc) {
assert.equal(err, null);
if (doc != null) {
res.status(200).json(doc);
} else {
callback();
}
});
};
mongo.connect(url, function(err, db) {
assert.equal(null, err);
findDocuments(db, function() {
db.close();
});
});
console.log('Items have been returned');
});
答案 0 :(得分:0)
router.get('/getdata', function(req, res, next){
var findDocuments = function(db, callback) {
//use such codtion that filter null/empty doc
//replace key with field of your doc
var cursor = db.collection('userdata').find({'key' : {$exists : true}});
//return all docs
if(cursor){
return callback(cursor);
}else{
return callback([]);
}
};
mongo.connect(url, function(err, db) {
assert.equal(null, err);
findDocuments(db, function(docs) {
db.close();
//send finaly doc here
console.log(docs);
res.status(200).send(docs);
});
});
console.log('Items have been returned');
});