Javascript Nodejs express用户注册,用于检查mongodb数据库中是否已存在用户名或电子邮件

Javascript Nodejs express用户注册,用于检查mongodb数据库中是否已存在用户名或电子邮件,javascript,node.js,express,Javascript,Node.js,Express,如何在node.js express应用程序中的用户注册过程中检查mongodb数据库中是否已存在用户名或电子邮件,然后通知用户已使用用户名或电子邮件。 这是我的密码 var usernameQuery = {username: username}; User.findOne(usernameQuery, function(err, user){ if(err) throw err; if(user){ req.flash('info', 'Username al

如何在node.js express应用程序中的用户注册过程中检查mongodb数据库中是否已存在用户名或电子邮件,然后通知用户已使用用户名或电子邮件。 这是我的密码

var usernameQuery = {username: username};
  User.findOne(usernameQuery, function(err, user){
    if(err) throw err;
    if(user){
      req.flash('info', 'Username already taken');
      return res(false);
    }
  });

  var emailQuery = {email: email};
  User.findOne(emailQuery, function(err, user){
    if(err) throw err;
    if(user){
      req.flash('info', 'Email already taken');
      return res(false);
    }
  });

使用mongodb
$或
运算符和
计数
方法检查是否存在具有相同
用户名
电子邮件
的记录:

User.count({
  $or: [
    { username },
    { email }
  ] 
})
.then(cnt => {
  if (cnt > 0) {
    req.flash('info', 'Username or Email already taken');
    return res.send({ success: false });
  }
  res.send({ success: true });
})
.cath(err => // TODO process error)

所以这不管用吗?