Ich versuche, Daten von mongodb durch NodeJS mnogdb-native Treiber abzurufen. mongod
Konsole zeigt an, dass die Verbindung erfolgreich ist. Nach dem Abrufen der Sammlungs- und Protokollierungsnachricht "before findOne" an die Konsole ist leider nichts passiert. Es sieht so aus, als ob die Methode findOne
niemals zurückkehrt.mongoe der FindOne Methode nether führt noch nicht
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;
Kann mir jemand auf den wahrscheinlichen Problempunkt hinweisen?
Ja, ich habe bereits festgestellt, dass, aber trotzdem danke. Ich war ein Neuling in der Event-getriebenen Welt, also habe ich keine offensichtlichen Dinge gesehen. – koss