Проверка данных формы в Node.js с помощью Validator.js

Введение Практически каждый веб-сайт включает сбор пользовательского ввода с помощью HTML-форм. Каждый раз, когда мы собираем пользовательские данные, мы должны их проверять. В компьютерных науках проверка данных - это процесс проверки того, являются ли введенные данные разумными и обоснованными. Подумайте о разработке формы для подписки по электронной почте. В этом случае мы хотим проверить, соответствует ли отправленное электронное письмо общему формату электронной почты, например username@randomMail.com. Без проверки злоумышленники могут ввести бесполезные значения или даже

Вступление

Практически каждый веб-сайт включает сбор пользовательского ввода с помощью HTML-форм . Каждый раз, когда мы собираем пользовательские данные, мы должны их проверять. В компьютерных науках проверка данных

  • это процесс проверки того, являются ли введенные данные разумными и обоснованными.

Подумайте о разработке формы для подписки по электронной почте. В этом случае мы хотим проверить, соответствует ли отправленное электронное письмо общему формату электронной почты, например [email protected] . Без проверки злоумышленники могут вводить бесполезные значения или даже выполнять SQL-инъекции.

В этой статье мы будем выполнять проверку данных формы с помощью Validator.js - облегченного пакета NPM, созданного именно для этой цели.

Установка Validator.js

Давайте создадим каталог для нашего проекта с именем string-validator , перейдем в него, создадим index.js входа index.js и инициализируем проект Node с настройками по умолчанию, используя npm :

 $ mkdir string-validator 
 $ cd string-validator 
 $ npm init -y 

Затем давайте:

 $ touch index.js 

После инициализации проекта мы можем установить Validator.js , используя:

 $ npm install validator 

Проверка данных формы с помощью Validator.js

Рассмотрим приложение для продажи книг, в котором пользовательский ввод сначала собирается с помощью HTML-формы. Затем эти данные отправляются в формате JSON на сервер для дальнейшей обработки. Давайте посмотрим, как для этого можно выполнить проверку строки.

Допустим, это данные, которые отправляются из внешнего интерфейса. Сохраним эти данные в файле index.js Также, давайте потребуем Validator.js в нашем файле:

 const validator = require("validator") 
 
 const data = { 
 "gender": "male", 
 "name": { 
 "title": "mr", 
 "first": "brad", 
 "last": "gibson" 
 }, 
 "countryCode": "IE", 
 "postalCode": "93027", 
 "email": " [email protected] ", 
 "cell": "081-454-0666", 
 "dob": "1993-07-20T09:44:18.674Z", 
 "creditCardNumber": "4539415755005206", 
 "book": { 
 "title": "Harry Potter and the Deathly Hallows", 
 "author": "Rowling, JK", 
 "isbn": "9780545010221", 
 "isbnVersion": "13" 
 } 
 } 

Validator.js имеет множество предустановленных функций для проверки действительности различных входных данных, таких как кредитные карты, мобильные телефоны, электронные письма, почтовые индексы и т. Д.

Прежде всего, давайте проверим, предоставляет ли пользователь действительные данные кредитной карты. Это можно сделать с помощью:

 console.log(validator.isCreditCard(data.creditCardNumber)); // true 

Для доставки книги необходимо указать действительный почтовый индекс. Итак, давайте проверим это, используя:

 console.log(validator.isPostalCode(data.postalCode, data.countryCode)) // false 

Проверить номер телефона можно с помощью:

 console.log(validator.isMobilePhone(data.cell, `en-${data.countryCode}`)); // false 

Подтверждение адреса электронной почты можно выполнить с помощью:

 console.log(validator.isEmail(data.email)) // true 

Кроме того, мы можем выполнить проверку ISBN, используя:

 console.log(validator.isISBN(data.book.isbn, data.book.isbnVersion)) // true 

Затем мы можем предложить пользователю повторно ввести любую недопустимую информацию, чтобы убедиться, что у нас есть чистые, работоспособные данные.

Заключение

В этой статье мы рассмотрели NPM-пакет Validator.js - легкий пакет, используемый для проверки данных и строк.

comments powered by Disqus