Node.js 无法获取我的设置404状态代码,而是获取错误id的500状态代码

Node.js 无法获取我的设置404状态代码,而是获取错误id的500状态代码,node.js,mongodb,express,mongoose,Node.js,Mongodb,Express,Mongoose,我是Nodejs新手,我正在尝试使用Nodejs玩这些东西 我创建了一个api(使用Nodejs、Express、Mongoose)来读取我试图在其中搜索无效用户id(id与mongoDB中的任何记录都不匹配)的用户 404响应从未触发。我输入了一个错误的ID,得到了500 附上代码截图以供参考: 对于使用findById,您应该只将id作为单个值传递,而不是在对象中传递。因此,将代码更新为 User.findById(_id) 使用findById很好,应该只将id作为单个值传递,而不是在

我是Nodejs新手,我正在尝试使用Nodejs玩这些东西

我创建了一个api(使用Nodejs、Express、Mongoose)来读取我试图在其中搜索无效用户id(id与mongoDB中的任何记录都不匹配)的用户

404响应从未触发。我输入了一个错误的ID,得到了500

附上代码截图以供参考:


对于使用findById,您应该只将id作为单个值传递,而不是在对象中传递。因此,将代码更新为

User.findById(_id) 

使用findById很好,应该只将id作为单个值传递,而不是在对象中传递。因此,将代码更新为

User.findById(_id) 
app.get('/useres/:id'), async (req, res) => {

    const _id = req.params.id;
    let user = await User.findById(_id).then((user) => {
        if (!user) {
            res.status(404).send()
        } else {
            res.status(200).json(user)
        }
    }).catch((e) => {
        res.status(500).send()
    })
}

你很乐意去

stackoverflow上的问题代码需要以文本而不是图像的形式粘贴。请使用问题下方的编辑链接修复此问题。这有很多原因,比如可以搜索,可以访问,想写答案的人可以复制/粘贴/修改代码到答案中,而无需从头重新键入。请修复您的问题。stackoverflow上的问题代码需要以文本而不是图像的形式粘贴。请使用问题下方的编辑链接修复此问题。这有很多原因,比如可以搜索,可以访问,想写答案的人可以复制/粘贴/修改代码到答案中,而无需从头重新键入。请修正你的问题。
app.get('/useres/:id'), async (req, res) => {

    const _id = req.params.id;
    let user = await User.findById(_id).then((user) => {
        if (!user) {
            res.status(404).send()
        } else {
            res.status(200).json(user)
        }
    }).catch((e) => {
        res.status(500).send()
    })
}