当向 /customers/41224d776a326fb40f000001
发送一个请求而一个具有 _id
41224d776a326fb40f000001
的文档不存在时,doc
是 null
,我返回一个 404
:
Controller.prototype.show = function(id, res) {
this.model.findById(id, function(err, doc) {
if (err) {
throw err;
}
if (!doc) {
res.send(404);
}
return res.send(doc);
});
};
然而,当 _id
不符合 Mongoose 期望的“格式”(我认为)时,例如 GET /customers/foo
就会返回一个奇怪的错误:
CastError: 对 ObjectId 的强制转换失败,路径“ _ id”的值为“ foo”。
那么这个错误是什么呢?