En ce moment j'utilise Facebook Connect de mongoose-auth. Tout fonctionne correctement, et les utilisateurs sont créés/connectés via mon serveur mongodb.Est-ce que quelqu'un a utilisé Mongoose-auth? Comment gérez-vous findOrCreateUsers?
Cependant, je veux remplacer findOrCreateUsers, car je veux assigner un "code" aléatoire à chaque nouvel utilisateur lors de son inscription, et le placer dans son profil db.users.
J'ai donc regardé dans le mongoose-auth/lib/facebook
, et j'ai copié ces 3 fichiers du module facebook dans mon propre répertoire [everyauth.js, index.js, schema.js]. Pour effectuer un test simple, j'ai inclus mon propre fichier everyauth.js dans mon répertoire et j'ai utilisé sa méthode findOrCreateUsers à la place de celle par défaut.
Cela fonctionne, mais il y a une erreur. Après la connexion/création de l'utilisateur, req.user
est indéfini. (req.loggedIn
montre Vrai, yay!)
Je sais que c'est une nouvelle bibliothèque, mais si vous l'avez utilisé (ou sais beaucoup au sujet de Node.js), j'apprécierais vraiment si vous pourriez m'aider. Je suis sur # node.js sur irc.freenode.net. Le pseudo est "xeodox". Si vous pouviez m'aider je l'apprécierais vraiment !!
Je l'emportaient sur findOrCreateUser en faisant cela au module facebook dans mes app.js:
findOrCreateUser: function (sess, accessTok, accessTokExtra, fbUser) {
var promise = new Promise()
, self = this;
// TODO Check user in session or request helper first
// e.g., req.user or sess.auth.userId
this.User()().findOne({'fb.id': fbUser.id}, function (err, foundUser) {
if (foundUser)
return promise.fulfill(foundUser);
self.User()().createWithFB(fbUser, accessTok, accessTokExtra.expires, function (err, createdUser) {
return promise.fulfill(createdUser);
});
});
return promise;
}