Подтвердить что ты не робот

POST Data JSON Validation в Express.js

Я пишу приложение, используя Node.js и Express.js. Приложение имеет (маленький) REST API, а затем веб-интерфейс. Я использую MongoDb.

Для API я склоняю данные POST к какой-либо конечной точке, а затем выполняю обработку или что-то еще, и выгружаю ее в базу данных. Тем не менее, у меня есть схема базы данных, которую я хотел бы применить. Каковы мои варианты/рекомендации по внедрению определенной структуры в мои данные POST, поэтому я знаю, что некоторые поля присутствуют и относятся к определенным типам.

Было бы неплохо, если бы это можно было сделать на уровне промежуточного программного обеспечения, но это не обязательно. Что обычно делают люди для обеспечения правильности/схемы?

4b9b3361

Ответ 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 должен быть определен.