如何在mongoose中消毒用户input?
我正在努力消除mongoose中的用户input。 我虽然使用mongoose中间件会有所帮助,但似乎我是错了,或者我做错了什么。
我试图使用Mongoose中间件(而不是Express中间件)的原因是我有一个可以嵌套文档的文档 – 但是,嵌套文档也可以是独立文档。 我正在为我的文档创build一个“单一的事实点”,以便我只能在一个地方进行清理。
下面的代码似乎不工作:
Organization.pre("validate", function (next) { this.subdomain = this.trim().toLowerCase(); next(); });
PS。 我也使用mongoosevalidation程序,它依次使用节点validation程序来validation用户input节点validation程序也有一些消毒方法,也许我应该使用它们?
在这种情况下,我认为最好添加trim: true
对于subdomain
的Organization
模式定义为trim: true
:
subdomain: { type: String, trim: true }