【发布时间】:2020-01-01 22:46:24
【问题描述】:
我不知道为什么当我通过邮递员访问 api 端点时,这只猫鼬 findOne 总是返回 null。
exports.updateUserPassword = async(req,res) =>{
const user = await User.findOne({
resetPasswordExpires:{ $gt:Date.now() },
resetPasswordToken:req.params.token
})
if(!user){
res.json({"msg":"Password is invalid or has been expired"})
}
}
当我 console.log 时在终端上,然后我得到了这个
{
_id: 5e4553309d0e232a60gc8b6a,
userName: 'Dan_rey',
userType: 'Group',
email: 'dan123@gmail.com',
password: '$2b$10$lq6BYYckKkOtY.as.EILMe7a.njPyBrHauxMlFfianxmSwdmiAT12',
date: 2019-12-29T19:49:04.608Z,
__v: 0,
resetPasswordExpires: 2019-12-30T19:04:05.874Z,
resetPasswordToken: '65bc534656b321907c5af968b13d0a44f41de73b'
}
但我只想要这两个,当我使用猫鼬 findOne 时 1) 重置密码过期, 2) 重置密码令牌
非常感谢任何帮助。
【问题讨论】:
-
最可能的原因是数据库中没有匹配的记录。
-
但如果我使用 mongoose Find() 命令,那么它将返回所有文档:resetPasswordToken 和 resetPasswordExpires @SergioTulentsev
-
你能添加应该找到的文件吗?还有 req.params.token 值
-
是的,当然@SuleymanSah
-
我们需要查看json格式的文档
标签: node.js mongodb mongoose mongodb-query