将 db.open 与 MongoDB 和 Nodejs 结合使用

cno*_*gr8 3 mongodb node.js

我有两个问题。

首先,MongoDB 文档不断引用 using db.open()and then db.collection(),但我注意到即使没有先调用,我仍然可以使用 apidb.open().这样做安全吗?api是内部调用吗db.open()

http://mongodb.github.com/node-mongodb-native/api- generated/db.html#collection

其次,对象中是否有一个参数db指定是否db.open()被调用?如果没有,我怎样才能知道是否db.open()被调用?

原因是因为我已经构建了几个与 mongo 通信的函数,但是当某些函数相互交互时,我收到数据库无法多次“打开”的错误。

编辑

我在对象中找到了这个参数db。看来这是一个 bool 决定了 the 的使用db.open(),但我不是 100% 确定,有人知道吗?db.serverConfig.internalMaster

小智 5

如果您需要知道数据库对象是否已连接,您可以检查 db._state == 'connected' 或 db.serverConfig.isConnected()。

您可能最好将已知的连接对象实际传递到您的 mvc,确保在启动应用程序之前打开数据库。