Xer*_*rri 5 connect node.js express
我正在构建一个简单的REST API,我只想接受JSON输入.我选择使用app.use(express.json({strict: true}));
而不是app.use(express.bodyParser());
.我正在strict: true
思考这会为无效的json增加一层安全性.其他人做类似的事吗?寻找有此设置经验的人的意见.谢谢
您的方法很好,因为您有可能减少应用程序的攻击区域。但是,我不确定是否有任何证据表明使用 bodyParser(这将允许一些格式错误的 JSON,以及 url 编码和多部分形式编码的数据)会产生任何有意义的风险。
您可以strict: true
在这里确切地看到什么意思:
http://www.senchalabs.org/connect/json.html
if (strict && '{' != buf[0] && '[' != buf[0]) return next(utils.error(400, 'invalid json'));
Run Code Online (Sandbox Code Playgroud)
它只是确保 JSON 以 { 或 [ 开头。你仍然依赖 Google 不会像 Rails 使用 YAML 那样搞砸 V8 中的 JSON.parse 实现,我认为这是一个相对安全的赌注。
归档时间: |
|
查看次数: |
6236 次 |
最近记录: |