mongodb中的投影查询


db.collection('users').findOne({username : decoded.username}, {password:0}).then(user => {
console.log(user)
});

我不知道为什么console.log的用户对象的输出即使在投影查询之后仍然有密码字段。

新的MongoDB nodeJS驱动程序不再支持此功能,您可以查看文档

对于mongoDB版本>3.4,您需要使用方法.project()

所以您的查询将类似于

db.collection('users').findOne({ username : decoded.username })
.project({ password: 0 }).then(user => {
console.log(user)
});

最新更新