gpt4 book ai didi

javascript - 为什么我的回调函数总是返回错误而不是响应

转载 作者:太空宇宙 更新时间:2023-11-04 01:40:13 24 4
gpt4 key购买 nike

我正在学习 Node ,但我一直在解决为什么回调总是返回错误

这是我的代码

todo.createTask(req,(err,resp)=>{
if(err){
res.status(400).send(err);
}else{
res.status(200).send(resp);
}
});
<小时/>
var createTask(req,callBack) =>{
var model = new models({
.
.
.
.
});

model.save().then((doc)=>{
callBack(doc);
}).catch((err)={
callBack(err);
})
}

我从 mongo 收到了成功的消息,其中包含我用于错误的 400 状态代码。

请帮我找出我做错了什么。我的目的是在成功时响应状态代码 200,在发生错误时响应状态代码 400。

最佳答案

有两种情况会调用回调:

callBack(doc);
callBack(err);

…在每个中,您传递一个参数。它被分配给第一个参数。

(err,resp)=>{

因此,在每种情况下,您都将真实值的某物分配给err,并将分配给resp

然后,您的 if(err){ 从第一个参数中获取真实值,并按照您的指示执行操作。

如果您想避免这种情况,您需要将 false 值传递给 err 并将您关心的值传递给 resp

关于javascript - 为什么我的回调函数总是返回错误而不是响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53161985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com