Мой текущий поток данных выглядит следующим образом:
Page1 - Пользователь вводит данные, используя <form>
, и нажимает ' Просмотр '.
Страница2 - Пользователь может просмотретьданные, собранные с предыдущего экрана и нажимают « Отправить ».Собранные данные теперь отправляются на сервер через POST-запрос к конечной точке.
Моя текущая экспресс-логика:
На странице 1 я использую <form method="POST" action="/review">
ина submit
, передавая данные формы для экспресс-маршрута.Как показано ниже:
app.post('/review', function(req, res){
req.session.name = req.body.name;
res.render('review.njk', { name: req.body.name });
});
и на странице 2 я использую другой <form method="POST" action="/send">
и submit
этой формы, я беру данные из сеанса и вызываю запрос POST.
app.post('/send', function(req, res){
// POST using req.session.name as request data
});
Моя проблема:
- У меня много полей в одной форме и много страниц с формами, и я не хочу иметь сеанснакладные расходы на управление (удаление данных из сеанса при каждом успешном вызове и т. д.).
- Кроме того, использование вторых форм для этой цели кажется мне необычным.Цель второй «фальшивой» формы - передать данные только второму маршруту.В качестве альтернативы, вы можете иметь 10 скрытых форм ввода, имеющих значения собранных данных, а также 10 элементов для отображения данных обзора, а затем на
submit
отправить их в бэкэнд.В обоих случаях это кажется нечистым, на мой взгляд.
Итак, мои вопросы - Использование Express (и не AJAX), есть ли лучший способ сделать это (собрать данные формы изПервая страница, покажите ее на следующей странице и затем отправьте данные)?
Любая помощь очень ценится.Заранее спасибо!