屏蔽文档字段

时间:2018-06-13 04:42:22

标签: mongodb mongoose mongoose-schema

有没有办法可以在创建或查找一个mongoose查询时屏蔽某些字段在文档中返回。

例如,user文档包含name username password。我希望在查询中不返回密码字段。现在,我必须通过在承诺中返回文档后将它们设置为undefined来手动屏蔽字段。

let user = await User.create(req.body);
user.password = undefined;
res.send(user);

在我看来,一旦你必须开始管理不同控制器之间的许多不同领域,上述解决方案是不可行的。我可以想象添加一个新字段并忘记屏蔽该字段,然后您已将敏感数据暴露给客户端。

理想的是,如果我可以创建一个方法,我们可以调用它User.create(req.body).getAllowedFields,这将返回我有权使用的字段列表。

我对MongoDb很新,所以我想这完全有可能

0 个答案:

没有答案