我有一个数据库包装类,建立一个连接到一些MongoDB实例:
async connect(connectionString: string): Promise<void> {
this.client = await MongoClient.connect(connectionString)
this.db = this.client.db()
}
这给了我一个警告:
(node:4833) DeprecationWarning:当前URL字符串解析器已弃用,并将在未来版本中删除。要使用新的解析器,将选项{useNewUrlParser: true}传递给MongoClient.connect。
connect()
方法接受一个MongoClientOptions
实例作为第二个参数。但是它没有名为useNewUrlParser
的属性。我还尝试像这样在连接字符串中设置这些属性:mongodb://127.0.0.1/my-db?useNewUrlParser=true
,但它对那些警告没有影响。
那么如何设置useNewUrlParser
来删除这些警告呢?这对我来说很重要,因为脚本应该以cron的方式运行,而这些警告会导致垃圾邮件。
我在版本3.1.0-beta4
中使用mongodb
驱动程序,在3.0.18
中使用相应的@types/mongodb
包。它们都是使用npm install
可用的最新版本。
使用旧版本的mongodb驱动程序:
"mongodb": "~3.0.8",
"@types/mongodb": "~3.0.18"