处理ExpressJS和MongoDB时出错

时间:2013-08-22 08:51:21

标签: error-handling express mongoose

ExpressJS和Mongoose中建议的错误处理方式是什么。

app.get('/', function(req, res) {
    Subjects.find({}, function(err, subjects) {
        if (err) {
            return res.json(err);
        }

        res.render('list', {subjects: subjects});
    });
});

我刚刚在json中返回了错误。有什么建议?感谢

1 个答案:

答案 0 :(得分:2)

这取决于该错误是什么,但我通常会将res.redirect重定向到“错误”网址,并附上错误详情。

您可以测试错误的详细信息,并重新运行查询(当然,这取决于错误)但通常如果回调引发错误,它是终端,所以记录,重定向和通知用户以一种很好的方式。

(当然,返回JSON并处理您的响应客户端,没有重定向)

修改

根据保罗的评论 -
我并不是要向用户返回有关错误的具体细节 根据错误的原因,简单地说“数据库错误”或类似的错误会更合适。