Настройка ExpressJS с MongoDB в проекте MERN - PullRequest
0 голосов
/ 13 февраля 2020

Таким образом, при запуске Nodemon после настройки клиента ExpressJS & MongoDB, я продолжаю получать

"DeprecationWarning: текущий механизм обнаружения и мониторинга сервера устарел и будет удален в будущей версии. Чтобы использовать новый механизм обнаружения и мониторинга сервера, передайте опцию {useUnifiedTopology: true} конструктору MongoClient. "

Я не совсем уверен, куда вставить этот код в мой сервер. js файл.

Ответы [ 2 ]

1 голос
/ 13 февраля 2020

Если вы используете mongodb, а не mongoose, тогда нужно только передать { useUnifiedTopology: true } в ваших MongoClient.connection опциях:

MongoClient.connect('mongodb://localhost:27017', { useUnifiedTopology: true })
  .then(client => {
    // do some stuff
  }).catch(error => {
    // do some stuff
  })

Надеюсь, это поможет вам.

1 голос
/ 13 февраля 2020

Вы захотите вставить его в то место, где вы создаете соединение mon go.

Например (используя mongoose) ...

const mongoose = require("mongoose");

const { DATABASE } = process.env; // this a mongodb connection string that varies upon the NODE environment

const options = {
  useNewUrlParser: true, // avoids DeprecationWarning: current URL string parser is deprecated
  useCreateIndex: true, // avoids DeprecationWarning: collection.ensureIndex is deprecated.
  useFindAndModify: false, // avoids DeprecationWarning: collection.findAndModify is deprecated.
  useUnifiedTopology: true // avoids DeprecationWarning: current Server Discovery and Monitoring engine is deprecated
};

mongoose.connect(DATABASE, options); // connect to our mongodb database

Вот шаблон Fullstack MERN , который я создал и использую для своих проектов, в котором приведен пример подключения к локальной базе данных mon go . При необходимости вы можете использовать его в качестве справочного материала.

...