Как проверить данные с помощью модуля joi в Node.js?
Модуль Joi - популярный модуль для проверки данных. Этот модуль проверяет данные на основе схем. Существуют различные функции, такие как optional (), required (), min (), max () и т. Д., Которые упрощают использование и являются удобным модулем для проверки данных.
Вступление:
- Легко начать и легко использовать.
- Это широко используемый и популярный модуль для проверки данных.
- Он поддерживает проверку на основе схемы.
Установка модуля joi:
- Вы можете посетить ссылку Установить модуль joi. Вы можете установить этот пакет с помощью этой команды.
npm установить joi
- После установки multer вы можете проверить свою версию joi в командной строке с помощью команды.
npm ls joi
- После этого вы можете просто создать папку и добавить файл, например index.js. Чтобы запустить этот файл, вам необходимо выполнить следующую команду.
узел index.js
- Требуемый модуль: вам необходимо включить модуль joi в свой файл, используя эти строки.
const Joi = require ('joi');
Имя файла: index.js
javascript
const Joi = require( 'joi' ) //User-defined function to validate the user function validateUser(user) { const JoiSchema = Joi.object({ username: Joi.string() .min(5) .max(30) .required(), email: Joi.string() .email() .min(5) .max(50) .optional(), date_of_birth: Joi.date() .optional(), account_status: Joi.string() .valid( 'activated' ) .valid( 'unactivated' ) .optional(), }).options({ abortEarly: false }); return JoiSchema.validate(user) } const user = { username: 'Pritish' , email: 'pritish@gmail.com' , date_of_birth: '2020-8-11' , account_status: 'activated' } response = validateUser(user) if (response.error) { console.log(response.error.details) } else { console.log( "Validated Data" ) } |
Примечание. В приведенной выше программе abortEarly установлено значение false, что гарантирует, что при наличии нескольких ошибок все они будут отображаться в терминале. Если установлено значение true, выполнение программы остановится, как только будет обнаружена первая ошибка, и только эта ошибка будет отображаться в терминале.
Шаги по запуску программы:
- Структура проекта будет выглядеть так:
- Убедитесь, что вы установили модуль joi, используя следующую команду:
npm установить joi
- Запустите файл index.js, используя команду ниже:
узел index.js
- Теперь, если ошибки не возникает, т. Е. Данные пользователя проверены, будет получен следующий вывод:
- Теперь, если мы проверим пользователя на недопустимые данные, как показано ниже, то будет получен следующий результат:
javascript
var user = { username: 'GH' , email: 'demo@' , date_of_birth: '2020-20-48' , account_status: 'abcd' }; |
Если для abortEarly установлено значение true, будет произведен следующий вывод:
Вот как вы можете проверять данные с помощью модуля joi. На рынке есть и другие модули для валидации, такие как экспресс-валидатор и т. Д.