我正在使用Restify和Mongoose创建API,而且我对这两者都是全新的。我似乎无法找出处理Mongoose / Node中错误的正确方法。
截至目前,我正在尝试这样做:
Submission.findById(req.params.submission_id, function(err, data) {
if (err)
return next(err);
res.send(data);
});
我正在尝试对此调用GET(对于不存在的用户)。而不是发送回简单的错误消息,它会导致我的整个节点应用程序失败。我对返回下一个用户(错误)以及应该做什么感到有点困惑。
非常感谢任何帮助。
答案 0 :(得分:4)
找不到匹配项的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);
});