下一个屏幕上的Node.js(Express)POST表单数据

时间:2019-04-27 19:04:52

标签: javascript html node.js forms express

我当前的数据流如下:

第1页-用户使用<form>输入数据,然后单击“ 查看”。

第2页-用户可以查看从上一屏幕收集的数据,然后单击“ 发送”。现在,已通过POST请求将收集到的数据发送到后端。

我当前的表达逻辑:

在Page1上,我使用<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 });
});

在Page2上,我正在使用另一个<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),是否有更好的方法(从第一页收集表单数据,在下一页显示然后提交数据)?

非常感谢您的帮助。预先感谢!

0 个答案:

没有答案