POST Data JSON Validation в Express.js
Я пишу приложение, используя Node.js и Express.js. Приложение имеет (маленький) REST API, а затем веб-интерфейс. Я использую MongoDb.
Для API я склоняю данные POST
к какой-либо конечной точке, а затем выполняю обработку или что-то еще, и выгружаю ее в базу данных. Тем не менее, у меня есть схема базы данных, которую я хотел бы применить. Каковы мои варианты/рекомендации по внедрению определенной структуры в мои данные POST
, поэтому я знаю, что некоторые поля присутствуют и относятся к определенным типам.
Было бы неплохо, если бы это можно было сделать на уровне промежуточного программного обеспечения, но это не обязательно. Что обычно делают люди для обеспечения правильности/схемы?
Ответы
Ответ 1
node-validator - это то, что вы ищете. Вы можете использовать его как отдельный модуль, подобный этому
var check = require('validator').check;
//Validate
check('[email protected]').len(6, 64).isEmail(); //Methods are chainable
check('abc').isInt(); //Throws 'Invalid integer'
Или вы можете использовать express-validator, который построен поверх node -validator в качестве промежуточного программного обеспечения.
Ответ 2
Ниже приведена benchmark различных механизмов проверки схемы JSON.
Кроме того, для наилучшей практики вы можете проверить JSON-schema, который пытается выложить стандартный способ определения того, как объект JSON должен быть определен.