У меня есть класс-оболочка базы данных, который устанавливает соединение с некоторым экземпляром MongoDB:
async connect(connectionString: string): Promise<void> {
this.client = await MongoClient.connect(connectionString)
this.db = this.client.db()
}
Это дало мне предупреждение:
(узел: 4833) DeprecationWarning: текущий синтаксический анализатор URL-адресов устарел и будет удален в следующей версии. Чтобы использовать новый синтаксический анализатор, передайте опцию {useNewUrlParser: true} в MongoClient.connect.
Метод connect()
принимает экземпляр MongoClientOptions
качестве второго аргумента. Но у него нет свойства с именем useNewUrlParser
. Я также попытался установить это свойство в строке подключения следующим образом: mongodb://127.0.0.1/my-db?useNewUrlParser=true
но оно не влияет на эти предупреждения.
Итак, как я могу установить useNewUrlParser
чтобы удалить эти предупреждения? Это важно для меня, так как скрипт должен запускаться как cron, и эти предупреждения приводят к спаму в мусорной почте.
Я использую драйвер mongodb
в версии 3.1.0-beta4
с соответствующим пакетом @types/mongodb
в 3.0.18
. Оба они являются последними доступными, используя npm install
.
Временное решение
Использование более старой версии драйвера mongodb:
"mongodb": "~3.0.8",
"@types/mongodb": "~3.0.18"