Экспресс-валидатор не выполняет проверку - PullRequest
0 голосов
/ 02 января 2019

Я занимаюсь разработкой простой программы с использованием Express. Я добавил Express-Validator для проверки файлов индекса EJS

Декларация:

const {check, validationResult} = require('express-validator/check');

Использование:

//This is to post the added customer
app.post('/users/add',
check('first_name').isLength({min:5}).withMessage('Name min 5 char'), (req, res) => {

});

Тест: Я ввожу 3-х символьное имя в поле имени, но оно не перехватывается.

1 Ответ

0 голосов
/ 04 января 2019

Начиная с версии 5.3.1 (последняя версия), экспресс-валидатор не отвечает автоматически на ваш запрос.

Функция check() запускает проверки, которые вы настраиваете для соответствующих полей, и сохраняет ошибки в запросе.
Затем вы должны использовать validationResult(), чтобы узнать, не прошла ли какая-либо из ваших проверок, например:

app.post('/users/add', [
  check('first_name').isLength({ min: 5 }).withMessage('Name min 5 char')
], (req, res) => {
  // Finds the validation errors in this request and wraps them in an object with handy functions
  const errors = validationResult(req);
  if (!errors.isEmpty()) {
    return res.status(422).json({ errors: errors.array() });
  }

  // Proceed and create the user
});

Больше доступно в руководстве по началу работы и API результатов проверки .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...