Express.js中的POST数据JSON验证

Dav*_*ian 12 validation rest json node.js express

我正在使用Node.js和Express.js编写应用程序.该应用程序有一个(小)REST API,然后是一个Web前端.我使用MongoDb.

对于API,我将POST数据倾向于某个端点,然后进行处理或其他任何操作,并将其转储到数据库中.但是,我有一些我想强制执行的数据库模式.在我的POST数据上强制执行特定结构的选项/最佳实践是什么,因此我知道某些字段存在且具有特定类型.

如果可以在中间件级别完成,那将是很好的,但它没有必要.人们通常会对验证/架构实施做些什么?

zem*_*rco 10

node-validator就是你要找的.您可以将它用作这样的独立模块

var check = require('validator').check;

//Validate
check('test@email.com').len(6, 64).isEmail();        //Methods are chainable
check('abc').isInt();                                //Throws 'Invalid integer'
Run Code Online (Sandbox Code Playgroud)

或者您可以使用构建在node-validator之上的express -validator作为中间件.

  • JSON验证也都没有. (3认同)
  • node-validator和express-validator都是不错的选择......但是,当前版本中的express-validator缺乏**清理**嵌套数据的能力...... (2认同)