【发布时间】:2017-01-18 15:54:28
【问题描述】:
我正在创建快速应用程序,并在路由器中从 mongodb 获取数据。这是我的代码
router.get('/', function(req, res, next) {
MongoClient.connect(url, function(err, db) {
db.collection('school').find({}).toArray(function(err, doc) {
assert.equal(null, err);
assert.ok(doc != null);
res.render('index', { title: 'iGyan.org', schools: doc});
});
db.collection('students').find({}).toArray(function(err, doc) {
assert.equal(null, err);
assert.ok(doc != null);
res.render('index', { title: 'iGyan.org',students: doc});
});
db.close();
});
});
当我运行代码并在浏览器中打开一个 url 时,它在控制台上显示错误
Error: Can't set headers after they are sent.
我已经看到几乎所有关于堆栈溢出的建议问题,但无法从中获得帮助。
我知道错误是因为我在函数中渲染了两次 res 但不知道如何克服这种情况。
【问题讨论】:
标签: javascript node.js mongodb express http-headers