1

我有一个使用 node.js + Express + mongoose 的工作站点。

恐怕MongoDB可能会被意外关闭,或者它可能一开始没有启动。

以下是代码:

var  mongoose    = require('mongoose'),
     Schema = mongoose.Schema;

mongoose.connect('mongodb://localhost/Test');

var Student = mongoose.model('student', new Schema());

Student.find({...},function(err,docs){
      do sth
});

如我所见,find在没有 Mongo 的情况下不会有错误消息。它只是被阻止了。

而且我没有在猫鼬中找到显示连接状态的属性。

所以有人知道我怎么知道 NodeJs 中 mongodb 的状态?

4

1 回答 1

2

err参数是一个标准的Error 对象,如果有任何异常(例如数据库连接不可用)将被设置。您不需要检查连接状态..您需要检查err并适当处理。

对于一些示例用法,值得阅读MongoDB 节点驱动程序的介绍。

另请参阅Mongoose 的错误处理

于 2012-08-01T07:51:58.277 回答