快速获取单个文档不会跳转
Get single document in express doesn't jumps to catch
我有以下快递代码。如果我尝试获取一个 ID 不存在的文档,我将一无所获。问题是我得到 200 作为响应状态,但我没有收到 Failed 消息。代码每次都跳转到“then”。
const Mymodel = require('../model/Mymodel');
const Single = (req, res) => {
const id = req.params.id;
Mymodel.findById(id)
.then(result => {
res.send(result);
})
.catch(err => {
console.log(err);
res.status(404).send({"Failed": "Document not found"});
});
}
您的查找查询响应为空,因此这不是错误。如果你发送 res.status(404).send({"Failed": "Document not found"});未找到的响应使用此。
const Mymodel = require('../model/Mymodel');
const Single = (req, res) => {
const id = req.params.id;
Mymodel.findById(id)
.then(result => {
if(result){
res.send(result);
}else{
res.status(404).send({"Failed": "Document not found"});
}
})
.catch(err => {
console.log(err);
res.status(404).send({"Failed": "Document not found"});
});
}
我有以下快递代码。如果我尝试获取一个 ID 不存在的文档,我将一无所获。问题是我得到 200 作为响应状态,但我没有收到 Failed 消息。代码每次都跳转到“then”。
const Mymodel = require('../model/Mymodel');
const Single = (req, res) => {
const id = req.params.id;
Mymodel.findById(id)
.then(result => {
res.send(result);
})
.catch(err => {
console.log(err);
res.status(404).send({"Failed": "Document not found"});
});
}
您的查找查询响应为空,因此这不是错误。如果你发送 res.status(404).send({"Failed": "Document not found"});未找到的响应使用此。
const Mymodel = require('../model/Mymodel');
const Single = (req, res) => {
const id = req.params.id;
Mymodel.findById(id)
.then(result => {
if(result){
res.send(result);
}else{
res.status(404).send({"Failed": "Document not found"});
}
})
.catch(err => {
console.log(err);
res.status(404).send({"Failed": "Document not found"});
});
}