Nodejs bcrypt return false

jadi kenapa bcryp yang saya gunakan untuk compare selalu failed ya padahal saya coba di website bcrypt generator bisa

let agentData = {
      username : req.body.email,
      password : req.body.password
    }
    let agentList = await Agent.findOne({
      where : {
        email : agentData.username
      }
    });
    if(agentList){
      sails.log(agentData.password);
      sails.log(agentList.password);
      if(await bcrypt.compare(agentData.password, agentList.password)){
        return res.send(agentList);
      } else {
        return res.send({
          "message" : "email or password incorrect",
        })
      }
    } else {
      return res.send({
        "message" : "none accounts use these email"
      })
    }

avatar nurcahyaari
@nurcahyaari

34 Kontribusi 12 Poin

Diperbarui 5 tahun yang lalu

1 Jawaban:

Jawaban Terpilih

Perhatikan fungsi compare di <a href=' https://www.npmjs.com/package/bcrypt '>package brcrypt</a> paremternya

<pre> bcrypt.compare(myPlaintextPassword, hash, function(err, res) { // res == true }); </pre>

pastikan membandingkan dengan passsword yang sudah dihash, bukan yang user ketika begitu saja

avatar hilmanski
@hilmanski

2686 Kontribusi 2135 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban