Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何保护Mongoose/MongoDB中的密码字段,所以它不会返回查询时,我填充集合?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_616_4@ 假设我有两个集合/模式。一个是具有用户名和密码字段的用户模式,然后,我有一个博客模式,它具有对作者字段中的用户模式的引用。如果我使用Mongoose做一些事情

Blogs.findOne({...}).populate("user").exec()@H_696_8@ 
 

我将有Blog文档和用户填充太多,但是如何防止Mongoose / MongoDB返回密码字段?密码字段是散列的,但不应返回。

我知道我可以省略密码字段,并返其余的字段在一个简单的查询,但我如何做填充。此外,有没有任何优雅的方式做到这一点?

此外,在某些情况下,我需要获取密码字段,如当用户想要@L_262_13@或更改密码时。

解决方法

.populate('user','-password')@H_696_8@ 
 

http://mongoosejs.com/docs/populate.html

JohnnyHKs回答使用scheR_882_11845@a选项可能是去这里的方式。

还要注意query.exclude()只存在于2.x分支中。

大佬总结

以上是大佬教程为你收集整理的node.js – 如何保护Mongoose/MongoDB中的密码字段,所以它不会返回查询时,我填充集合?全部内容,希望文章能够帮你解决node.js – 如何保护Mongoose/MongoDB中的密码字段,所以它不会返回查询时,我填充集合?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。