我有一个连接到MongoDB的节点程序。有一个生产服务器,我们在那里进行适当的身份验证来连接到数据库,但在我们本地机器上的开发过程中,跟踪身份验证是更繁琐的,特别是因为大多数时候我们经常完全擦除数据库。因此,重置身份验证变得更加繁琐。因此,我的解决方案是尝试安全地连接到数据库,然后如果连接失败,则尝试以开发方式连接到数据库。代码如下:
var db = require('monk')('username:password@localhost/TESTR', {authSource:'admin'});
db.catch(function(err) {
clog.i("MONGO AUTHENTICATION FAILED, USING NO AUTH CLIENT");
db = require('monk')('localhost/TESTR')
});问题是,这不起作用。应用程序的其余部分只是抱怨第一次尝试的身份验证失败。有没有更好的解决方案?还是我只是个笨蛋?
发布于 2017-06-09 15:17:10
var monk = require('monk');//layer used to connect mongodb
var db = monk('*****:27017/TESTR');
var collection = db.get('collection_name');
//you can access your collection using the mongo query
//simple controller action
module.exports = function(req, res){
collection.find({}, function(err, cb){
if(err) {res.json("db exception");}
else{res.json(cb)//it returns the db collections}
};
}https://stackoverflow.com/questions/44445963
复制相似问题