2017-12-30 20 views
0

現在、私の 'Javascript'コード。 "TypeError:res.status(...)。json(...)。catchは関数ではありません"と私は私の約束がコード行のどこかで間違っていると推測しています。 'UnhandledPromiseRejection'警告:未処理の約束拒否(拒否ID:2):TypeError:res.status(...)。json(...)catchが関数ではありません

この

は、私がこれまで持っているものです。

route.js

route.post('/login', function(req, res) { 
    log.login(req,res).then((post)=>{ 
     res.status(200).json({message: post}) 
     .catch((error)=>{ 
     res.status(400).json({message: error}) 
     }) 
    }) 
    }); 

と私はあなただけ})、固定コードを見逃していると信じている

function login(req,res){ 
    console.log('here', req.body.email, req.body.password) 
     if (!req.body.email || !req.body.password) { 
     return Promise.resolve({success: false, msg: 'Please pass email and password.'}); 
     } else { 
      return Promise.resolve(User.findOne({ 
       'local.email': req.body.email 
     })).exec().then((user)=> { 
      if (!user) { 
      return Promise.reject({success:false, msg: 'Authentication failed. User not found'}); //res.send({success: false, msg: 'Authentication failed. User not found.'}); 
      } else { 
      // check if password matches 
       if(user.validPassword(req.body.password)) { 
       // if user is found and password is right create a token 
       var token = jwt.sign(user.id, config.secret); 
       // return the information including token as JSON 
       return Promise.resolve({success: true, token: 'JWT ' + token}); 
      } else { 
       return Promise.reject({success: false, msg: 'Authentication failed. Wrong password.'}); 
      } 
      } 
     }).catch((errors)=>{ 
      return ({message: "Could not propose login"}); 
     }) 
     } 
    } 


module.exports = { 
    login 
} 

答えて

1

login.js :

route.post('/login', function(req, res) { 
    log.login(req,res).then((post) => { 
     res.status(200).json({message: post}) 
     }) 
     .catch((error) => { 
     res.status(400).json({message: error}) 
     }) 
    }) 
    }); 
関連する問題