1

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

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

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

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

4

1 回答 1

3

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

您可以测试错误的详细信息,然后重新运行查询(当然取决于错误是什么)但通常如果回调抛出错误,它是终端,所以记录它,重定向并通知用户一个不错的方式。

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

编辑

根据 Paul 的评论 -
我并不是要向用户返回有关错误的确切详细信息。
简单的“数据库错误”或类似的东西会更合适,具体取决于错误是什么。

于 2013-08-22T09:09:40.420 回答