【问题标题】:mongoose: why I'm not getting error response猫鼬:为什么我没有收到错误响应
【发布时间】:2017-05-11 23:16:59
【问题描述】:

每次我输入错误的用户时我都写了这条路线来查找用户我没有得到 res.json() msg​​

app.post('/authenticate', function(req, res){

    user.findOne({email : req.body.username}, function(err, user){
          if(err){
            res.json('user not found');  //not getting this 
          }else{  
            console.log(user);  //probably this ran, cuz getting null at cmd
          }
    })
})

【问题讨论】:

    标签: javascript node.js mongodb typescript mongoose


    【解决方案1】:

    当用户名与任何文档不匹配时,它返回空用户json。错误 err object is null so res.json is unreachable ,所以你必须通过

    app.post('/authenticate', function(req, res){
    
            user.findOne({email : req.body.username}, function(err, user){
                  if(err){
                    throw err;
                  }else{ 
                    if(user){
                      console.log(user);  //probably this ran, cuz getting null at cmd
                    }else{
                      console.log("User Not Found");
                    }
    
                  }
            })
        })
    

    【讨论】:

    • 那么为什么回调中有err参数,如果文档不匹配则没有得到任何东西
    • err 是检查查询时是否发生错误,如果没有发生错误则为空@johndoe
    • 你能解释一下 api 是如何应用于 '/api' 的,为什么它是这样写的 api 中间件,路由器scotch.io/tutorials/… :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 1970-01-01
    • 2020-04-08
    • 1970-01-01
    • 1970-01-01
    • 2018-12-29
    相关资源
    最近更新 更多