Auth0: не авторизован для запроса на db.collection - PullRequest
0 голосов
/ 16 сентября 2018

Я пытаюсь подключить мой Mongodb с авторизацией Auth0.Я использую Mlabs для размещения моей базы данных.Внутри этой базы данных у меня есть коллекция «users», а в документах есть ключи «username», «password», «email» и «_id». Когда я пытаюсь использовать скрипт входа Auth0, я получаю следующую ошибку: Notавторизован для запроса на mydb.users. Ниже приведен скрипт:

function login(email, password, callback) {
  mongo('<mongodb uri>', function (db) {
    var users = db.collection('users');
    console.log(users);
    users.findOne({ email: email }, function (err, user) {

      if (err) return callback(err);

      if (!user) return callback(new WrongUsernameOrPasswordError(email));

      bcrypt.compare(password, user.password, function (err, isValid) {
        if (err) {
          callback(err);
        } else if (!isValid) {
          callback(new WrongUsernameOrPasswordError(email));
        } else {
          callback(null, {
            user_id: user._id.toString(),
            nickname: user.nickname,
            email: user.email
          });
        }
      });
    });
  });
}

Есть идеи, почему я могу получить эту ошибку? Заранее спасибо!

1 Ответ

0 голосов
/ 16 сентября 2018

Вы, вероятно, должны проверить соединение с БД. Обратный вызов должен иметь параметр ошибки

 mongo('<mongodb uri>', function (err,db) {
    if(err){
      console.log(err)
     }
 })

если это не помогает, тогда вы должны назначить разрешения на чтение и запись для выполнения запланированных операций (в вашем случае чтение) в указанной базе данных

...