У меня есть этот код в router.post
, который будет проверять мою форму ввода с помощью AJAX:Неожиданное поведение в экспресс-маршрутизатор проверки формы
if(req.body.firstname === '' || req.body.firstname !== req.body.firstname.match(/\D+/g)[0]) {
console.log('AJAX ERROR: Firstname is empty and/or have a number.');
}
else if(req.body.captcha !== req.body.captcha.match(/^kettő$/igm) ||
req.body.captcha !== req.body.captcha.match(/^ketto$/igm) ||
req.body.captcha !== req.body.captcha.match(/^two$/igm)) {
console.log('AJAX ERROR: captcha is empty and/or the entered value is invalid.');
}
else {
console.log('AJAX ERROR');
};
Ожидаемый результат:
- если
firstname
пуста, чем ошибка выброса вconsole.log
- если
firstname
имеет номера, кроме ошибки выброса вconsole.log
- если
captcha
не равенkettő, ketto, Kettő, Ketto, KETTŐ, KETTO, two, Two, TWO
ответов, чем ошибка выброса вconsole.log
- Другое условие, если эти требования не выполняются, введите
else
.
Опытная поведение:
captcha
всегда бросали ошибкуconsole.log
после того, когдаfirstname
проверяется.firstname
работает должным образом.
Я также испытывают серьезные задержки после многих повторного запроса в строке со следующей ошибкой консоли: main-vanilla.min.js:1 POST http://127.0.0.1:3000/hu/form net::ERR_EMPTY_RESPONSE