Node.js TypeError:pchstr必须是非空字符串

Node.js TypeError:pchstr必须是非空字符串,node.js,mongodb,express,mongoose,hash,Node.js,Mongodb,Express,Mongoose,Hash,argon2的代码: const usercheck = userModel.findOne({ username: req.body.username }) const pwcheck = userModel.findOne({ password: mongoose.Query }) if(!usercheck) return res.status(400).json({success: false, message: "Username not found.&q

argon2的代码:

const usercheck = userModel.findOne({
    username: req.body.username
})

const pwcheck = userModel.findOne({
    password: mongoose.Query
})

if(!usercheck) return res.status(400).json({success: false, message: "Username not found."})
try {
    if (await argon2.verify(pwcheck, req.body.password)) {
      res.status(200).json({ success: true, message:"Logged in!" })
    } else {
      res.status(400).json({ success: false, message: 'invaild password' })
    }
  } catch (err) {
    console.log(err)
  }

如何从mongoose数据库获取字符串?然后我可以把它交给argon2来验证它

你忘记使用
wait
关键字了吗?当您从
userModel.findOne()
nope()读取数据时,正如您刚才所说,我使用了wait,它修复了一些问题,但仍然是相同的thingTypeError:pchstr在Object.verify反序列化时必须是非空字符串(C:\Users\User\Desktop\starrain backend\node\u modules\@phc\format\index.js:143:11)(C:\Users\Nerox\Desktop\starrain backend\node\modules\argon2\argon2.js:55:73)在C:\Users\User\Desktop\starrain backend\index.js:112:26的processtick和rejections(node:internal/process/task\u queues:94:5)@neroxreal什么是pchstr?它在您上面提供的代码中不可见。我不确定那是什么。