node.js - Mongo DB mongoose schema.Save 函数正在从数据库中删除字段
问题描述
我正在学习 MongoDB Express 来构建 API。我正在构建一个 API 端点来重置密码,所以要更新密码,我使用 MongooseSchema.Save() 查询来运行验证检查。
这是我更新密码的代码。
if (!user)
return next(new AppError('Token is Invalid / Expired', 400));
user.password = req.body.password;
user.confirmPassword = req.body.confirmPassword;
user.passwordResetToken = undefined;
user.passwordResetExpires = undefined;
user = await user.save();
console.log(user);
sendToken(user, 200, res);
查询成功执行,我也收到了响应时的令牌。但是当我在 MongoDB Compass 应用程序中检查密码块时,没有密码字段,并且在登录时显示密码字段未定义。
因此,我登录了用户,如您在上面的代码中看到的那样,以检查密码是否显示以及密码是否存在。一切正常,只是从数据库中删除了密码。这是我的 Console.log():
{ role: 'user',
_id: 60db434647541f758fbe7357,
name: 'Priyanshu Raturi',
email: 'asffssf@gmail.com',
password:
'$2a$12$SijfMMslOO7i0P67f9KLruqrqEbtxb9ht7v/x9xoGw7U6QgwFPEMy',
__v: 0 }
它之前工作正常。
解决方案
推荐阅读
- javascript - 停止从 laravel 中的 javascript 函数重新加载页面
- flutter - 在 null 上调用了方法“findRenderObject”
- node.js - 如何检测 Node.js 中的无限循环?
- c - 使用 libCurl 的 EST 客户端的 simpleeenroll
- spring - 自动装配参数作为 bean 声明参数
- python-3.x - 从另一个 pyspark 数据帧中的一个 pyspark 数据帧中搜索字符串
- gatling - 编辑“gatling.conf”时无法更改加特林指标范围
- wordpress - 如何获得库存产品变化的最低或最高价格?
- python - 使用 Metatrader5 库使用 python 更改 metatrader5 中的止损,但没有任何反应
- javascript - 如何使用 JQuery 将文本中的主题标签转换为粗体?