Как правильно подключить MongoDB cluster к моему приложению?

#javascript #node.js #database #mongodb #mongodb-atlas

#javascript #node.js #База данных #mongodb #mongodb-atlas

Вопрос:

Я пытаюсь подключить кластер к Node.js приложение и все, что я получаю, — это authentication fail ошибка. Я уже некоторое время пытаюсь это исправить, и на данный момент я действительно разочарован.

Вот как выглядит мой код:

 const db = require('./config/keys').mongoURI;
 mongoose
  .connect(db, { useNewUrlParser: true })
  .then(() => console.log('MongoDB Connected'))
  .catch(err => console.log(err)); 
  

mongoURI выглядит примерно так:

 mongodb srv://namehere:<passwordhere>@cluster0-bhve1.mongodb.net/test?retryWrites=true
  

Я продолжаю получать эту ошибку:

 { MongoError: authentication fail
    at C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibtopologiesreplset.js:1458:15
    at C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibconnectionpool.js:869:7
    at C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibconnectionpool.js:845:20
    at finish (C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibauthscram.js:233:16)
    at handleEnd (C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibauthscram.js:243:7)
    at C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibauthscram.js:352:15
    at C:UsersAyaLeDesktopnodesnode_modulesmongodb-corelibconnectionpool.js:532:18
    at process._tickCallback (internal/process/next_tick.js:61:11)
  errors:
   [ { name: 'cluster0-shard-00-00-bhve1.mongodb.net:27017',
       err: [MongoError] },
     { name: 'cluster0-shard-00-02-bhve1.mongodb.net:27017',
       err: [MongoError] },
     { name: 'cluster0-shard-00-01-bhve1.mongodb.net:27017',
       err: [MongoError] } ],
  name: 'MongoError',
  [Symbol(mongoErrorContextSymbol)]: {} }
  

Комментарии:

1. { useNewUrlParser: true, authSource: "admin" }

2. Могу ли я увидеть вашу строку подключения, просто заменить ПОЛЬЗОВАТЕЛЯ и ПРОЙТИ тест или что-то еще? 🙂 У меня не было проблем с запуском вашего кода, поэтому он может быть в вашей строке подключения

3. Я установил имя пользователя и пароль такими же, mongodb srv://aya:<aya>@cluster0-bhve1.mongodb.net/test?retryWrites=true которые я также добавил authSource: "admin" , но все еще не работает