1

我正在使用RestifyMongoose创建一个 API ,而且我对两者都是全新的。我似乎无法弄清楚在 Mongoose / Node.js 中处理错误的正确方法。

截至目前,我正在尝试做这样的事情:

Submission.findById(req.params.submission_id, function(err, data) {

    if (err) 
        return next(err);

    res.send(data);

});

我正在尝试对此调用 GET(对于不存在的用户)。而不是发回一个简单的错误消息,它会导致我的整个节点应用程序失败。我对 return next(err) 的用户以及应该做什么感到有些困惑。

任何帮助是极大的赞赏。

4

1 回答 1

5

未找到匹配项的findById查询在 Mongoose 级别不是错误,因此如果您希望以这种方式处理它,您必须自己进行:

Submission.findById(req.params.submission_id, function(err, data) {

    if (err)
        return next(err);
    else if (!data)
        return next(new Error("User not found"));

    res.send(data);

});
于 2013-01-14T17:47:14.633 回答