Как использовать mongoose для подключения к MongoDB, если в пароле есть @? - PullRequest
0 голосов
/ 26 ноября 2018

mongoose.connect('mongodb://admin:admin@MongoDB1995@200.100.200.100/database', { useNewUrlParser: true })

Это строка, которую использует mongoose для анализа имени пользователя и пароля из целевой базы данных.Здесь есть проблема, сам пароль содержит «@», и поэтому mongoose неправильно его проанализирует.Так как я могу передать пароль в mongoose, где в пароле есть @?

Я могу использовать mongodb://200.100.200.100/database?user= admin:admin&pass=admin@MongoDB1995 для подключения к базе данных, но как только он будет подключен, если я выполню какую-либо команду, он отправитиз этого отклонения:

UnhandledPromiseRejectionWarning: MongoError: command insert requires authentication

1 Ответ

0 голосов
/ 26 ноября 2018

попробуйте следующим образом:

mongoose.connect ('mongodb: // имя пользователя: пароль @ хост: порт / база данных? Параметры ...');

var connectionString = 'mongodb://admin:MongoDB1995@200.100.200.100:database_port_here/database';

mongoose.connect(connectionString,{ useNewUrlParser: true });

читать дальше здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...