防止 NodeJS 和 MongoDB 中永无休止的子文档
在nodeJS中,我们可以通过以下方式获取POST数据:
<input type="text" name="doc[a]"/>
var doc = req.body.doc;
当我获取“doc”时,我使用native-mongodb collection.insert(doc, .. )
我想知道在执行 POST 请求时,如果我注入这种
doc[a][b][c][d][e][f][g][h][i][j][.]... = xxxx
doc[b] = yyy
doc[e] = zzz
我只需要 doc[a] buy 的数据,最终会在 Node 和 MongoDB 中得到 doc.abcdfg.. 像这样吗? 有什么好的解决方案可以防止这种情况发生?
In nodeJS, we can get POST data by this:
<input type="text" name="doc[a]"/>
var doc = req.body.doc;
When I get 'doc', I insert into MongoDB using native-mongodb collection.insert(doc, ..)
I wonder if when doing POST request, I inject this kind of data
doc[a][b][c][d][e][f][g][h][i][j][.]... = xxxx
doc[b] = yyy
doc[e] = zzz
I only need doc[a] buy would end up having doc.a.b.c.d.f.g... like this in Node and MongoDB right?
What is a good solution to prevent that to happen?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
有关 MongoDB 注入的信息可以在 中找到官方文档。以下是一些 PHP 安全指南。解决方案非常简单 - 将其类型转换为字符串。
Information about MongoDB Injection can be found at the official docs. and Here are some security guidelines from PHP. The solution is pretty simple - type cast it to string.