您好,我正在学习 mongoDB 并尝试将数据库查询结果打印到浏览器。
我有一个程序正在运行,它使用 console.log()
将输出 JSON 写入控制台
有没有办法使用res.send()
(使用express)或response.write()
和response.send()
简单地输出数据库查询得到的原始 JSON 数据?
换句话说,如何让我的数据库调用返回一个字符串?
// Use connect method to connect to the server
var invokeDatabase = function() {
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected successfully to database server");
findDocuments(db, function() {
findDocumentsFiltered(db, function() {
db.close();
});
});
});
};
//routes
app.get('/', function(req, res) {
console.log("Someone connected.")
res.send("accessing database... " + invokeDatabase())
//res.send('Welcome G')
})
最佳答案
这个例子可以帮助你理解
// Use connect method to connect to the server
var invokeDatabase = function(callback) {
MongoClient.connect(url, function(err, db) {
//assert.equal(null, err);
if(err) {
console.log("Unable to connect database");
callback(err, null);
return;
}
console.log("Connected successfully to database server");
findDocuments(db, function() {
findDocumentsFiltered(db, function(err, data) {
callback(err, data);
db.close();
});
});
});
};
//Added for demo. Here users is collection
var findDocumentsFiltered = function(db, callback) {
db.collection('users').find({}).toArray(function(err, userList) {
callback(err, userList);
});
};
//routes
app.get('/', function(req, res) {
console.log("Someone connected.")
invokeDatabase(function(err, data) {
if(err)
res.status(500).json({error: err});
else
res.json(data);
}))
//res.send('Welcome G')
})
关于javascript - MongoDB 输出到浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39234903/