node.js - 我怎么知道mongodb是否是由mongoose启动的?

标签 node.js mongodb mongoose

我有一个使用 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
});

据我所知,在没有 Mongo 的情况下 find 不会出现错误消息。刚刚被屏蔽了。

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

那么有人知道我如何知道 NodeJs 中 mongodb 的状态吗?

最佳答案

err 参数是标准 Error object如果出现数据库连接不可用等异常,则会设置该值。您不需要检查连接状态..您需要检查err并进行适当处理。

值得一读introduction to MongoDB's node driver一些示例用法。

另请参阅Error handling对于 Mongoose 。

关于node.js - 我怎么知道mongodb是否是由mongoose启动的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11752598/

相关文章:

python - 如何使用 pymongo 对 mongodb 进行排序

Mongoose pre findOneAndUpdate 钩子(Hook)问题

node.js - Grunt Sass - 将所有 Sass 文件编译成同名的 CSS

javascript - Node Js 中不同的类是否可以相互检测 'emits' ?

java - Java 中的 Mongo 导出

MongoDB 和 WiredTiger 兼容性问题

node.js - Node 将 Promise 与异步模块结合使用

arrays - Mongoose 更新与对数组的推送操作和对对象的设置操作

javascript - 苹果电脑 : Node JS Mongo Database Error: Connection Refused

mongodb - 计算年、月、日的日期差异