Mongoose może przeprowadzić autoryzację na 2 sposoby:
1, Ciąg połączenia:
mongoose.connect('mongodb://username:[email protected]:port(usually 27017)/db')
Gdzie nazwa użytkownika i hasło są odpowiednią nazwą użytkownika i hasłem dla tej konkretnej bazy danych, host będzie hostem, na którym hostowana jest twoja baza danych (więc localhost lub jakaś domena/IP), port to port, na którym nasłuchuje mongo, a db to nazwa db, z którym chcesz się połączyć
2, Korzystanie z opcji. Z dokumentów:
var options = {
useMongoClinet: true,
auth: {authdb: 'admin'},
user: 'myUsername',
pass: 'myPassword',
}
mongoose.connect(uri, options);
W pierwszym podejściu spotkałem się również z błędem „niezdefiniowana nazwa użytkownika”, ale udało mi się w drugim podejściu.
[Odniesienie] https://github.com/Automattic/mongoose/issues/4891