我正在尝试通过 nodejs mnogdb-native 驱动程序从 mongodb 检索数据。mongod
console 表示连接成功。不幸的是,在控制台检索收集和记录消息“在 findOne 之前”之后,什么也没发生。看起来该findOne
方法永远不会返回。
var mongo = require('mongodb'),
config = require('./config');
var UserProvider = function() {
this.db = new mongo.Db('chatbox',
new mongo.Server(config.mongoServer, config.mongoPort, {auto_reconnect: true}), {});
this.db.open(function() {});
};
UserProvider.prototype.getCollection = function(callback) {
this.db.collection('users', function(error, collection) {
if (error) {
callback(error);
}
else {
callback(null, collection);
}
});
};
UserProvider.prototype.validateUser = function(username, password, callback) {
this.getCollection(function(error, collection) {
if (error) {
console.log('error');
callback(error);
}
else {
console.log('before findOne');
collection.findOne({login: username, password: password}, function(error, item){
console.log('done');
if (error) {
callback(error);
}
else {
callback(null, item != null);
}
});
}
});
};
module.exports = UserProvider;
谁能指出我可能的问题点?