Mysql
 sql >> Datenbank >  >> RDS >> Mysql

TypeError:Die Eigenschaft „password“ von undefined in der Anmelderoute kann nicht gelesen werden

Ihre Abfrage ist in Ordnung und gibt keinen Fehler, daher sollten Sie auch result.length> 0 überprüfen und dann res.send('email not found')

router.post('/login', (req, res) => {
  var email = req.body.email
  var password = req.body.password

  var GRAB_USER = `SELECT * FROM user_details WHERE email = ?`
  db.query(GRAB_USER, email, (err, result) => {
    if (err) {
        res.send('email not found')
    } 
    else if (result.length==0) {
      res.send('email not found') //this is what you are missing
    }
    else {
      var user = result[0]

      bcrypt.compare(password, user.password, (err, match) => {
        if (err) {
          res.send('password not match')
        } else {
          res.send(user)
        }
      });
    }
  })
})