Я новичок в node.js, и что я хочу сделать, это передать введенные данные формы после обработки формы обратно в поля ввода, если в данных, переданных в форме, есть что-то ошибочное (например, имя пользователя уже используется) , Я пытаюсь сделать это с помощью EJS, но форма, похоже, не возвращает значение.Как правильно кэшировать входные данные в node.js?
Ниже мой app.js фрагмент кода:
app.use(bodyParser.urlencoded({
extended: false
}));
app.use(bodyParser.json());
app.post('/',function(req,res){
var username = req.body.username;
res.render('registration', {title: 'Registration',
username: username});
});
Ниже мой registration.ejs фрагмент кода:
<form class="form" action="/" method="post" name="regForm">
<div class="form-group">
<input type="text" value="<% username %>" name="username" class="form-control" id="username" placeholder="Username" onblur="validateUsername(this.value)" required>
</div>
</form>
После размещения Я ожидаю поле имени пользователя, чтобы быть наполнен значение, введенное мной, но похоже, что это не так. Что может быть причиной?
Я правильно занимаюсь этим кешем или есть способ лучше кэшировать входные данные?
Вы уверены, что 'req.body.username' является строкой? Используете ли вы подходящее средство для разбора синтаксического кода (например, «промежуточное программное обеспечение» для «urlencoded()» body-parser? – mscdex
У меня это в моем коде: app.use (bodyParser.json()); Это то, о чем вы говорите правильно? – dtem052996