Предупреждение об устаревании при подключении к mongodb Atlas - PullRequest
0 голосов
/ 28 мая 2020

Сервер работает в режиме разработки на порту 4500 (узел: 18135) UnhandledPromiseRejectionWarning: MongooseServerSelectionError: не удалось подключиться ни к одному серверу в вашем кластере MongoDB Atlas. Одна из распространенных причин заключается в том, что вы пытаетесь получить доступ к базе данных с IP-адреса, не внесенного в белый список. Убедитесь, что ваш текущий IP-адрес находится в белом списке IP-адресов кластера Atlas: https://docs.atlas.mongodb.com/security-whitelist/ в NativeConnection.Connection.openUri (/home/waseem/Documents/devcamper_api/node_modules/mongoose/lib/connection.js : 823: 32) в пн goose .connect (/home/waseem/Documents/devcamper_api/node_modules/mongoose/lib/index.js:333:15) в connectDB (/ home / waseem / Documents / devcamper_api / config / db. js: 4: 30) в Object. (/home/waseem/Documents/devcamper_api/server.js:11:1) в Module._compile (internal / modules / cjs / loader. js: 776: 30) в Object.Module._extensions .. js (internal / modules / cjs / loader. js: 787: 10) в Module.load (internal / modules / cjs / loader. js: 643: 32) в Function.Module._load (internal / modules /cjs/loader.js:556:12) в Function.Module.runMain (internal / modules / cjs / loader. js: 839: 10) в internal / main / run_main_module. js: 17: 11 (узел: 18135) UnhandledPromiseRejectionWarning: необработанное отклонение обещания. Эта ошибка возникла либо при вызове функции asyn c без блока catch, либо при отклонении обещания, которое не было обработано с помощью .catch (). (идентификатор отклонения: 1) (узел: 18135) [DEP0018] DeprecationWarning: необработанные отклонения обещаний устарели. В будущем необработанные отклонения обещаний завершат процесс Node.js с ненулевым кодом выхода.

введите здесь код

  {
      const mongoose = require('mongoose');

    const connectDB = async () => {
        const conn = await mongoose.connect(process.env.MONGO_URI, {
            useNewUrlParser:true,
            useCreateIndex:true,
            useFindAndModify:false,
            useUnifiedTopology: true 
        });

    console.log(`MongoDB Connected: ${conn.connection.host}`);

    };
    module.exports = connectDB;

    }

1 Ответ

0 голосов
/ 28 мая 2020

Вы должны убедиться, что ваше приложение может достичь вашей среды MongoDB Atlas. Чтобы обеспечить соединение с Atlas, вы должны внести входящий сетевой доступ из среды вашего приложения в белый список MongoDB Atlas, добавив в белый список IP-адреса publi c, если вы используете AWS. Так что попробуйте Universal IP address i.e. 0.0.0.0/0, если вы хотите получить доступ к своему Mon go из любого места.

Вы можете добавить IP-адрес, перейдя в Network Access, а затем щелкнув ADD IP ADDRESS.

Ссылка image: enter image description here

посетите для получения дополнительной информации: https://docs.atlas.mongodb.com/setup-cluster-security/#add -ip-addresses-to-the-whitelist

...