如何将HTML表单数据发送到Node.js

时间:2019-04-10 20:13:37

标签: html node.js html-form

Node.js - How to send data from html to express的答案通过使用服务器的其他端口解决了我遇到的问题。我想知道实时网站(例如此网站(stackoverflow的搜索栏))如何使用表单操作(该目录为“ / search”)而不是类似于链接答案的端口?是node.js不能监听目录吗?还是我对HTTP请求的工作方式一无所知?

1 个答案:

答案 0 :(得分:0)

您在端口上侦听http请求。您的前端将在JavaScript代码中通过端口向服务器路由发送ajax(异步javascript和xml)请求。

如果您想要一个用于轻松进行ajax请求的好工具,则可以使用jQuery或Axios,并查找如何使用这些库进行ajax。

在后端,您的服务器正在侦听端口的路由请求。设置路由(称为目录)以响应对特定URL的请求。您提到的示例显示:

app.post('/myaction', function(req, res) {
  res.send('You sent the name "' + req.body.name + '".');
});

Express是用于执行各种操作的后端框架,但最常见的是处理HTTP请求和呈现HTML。因此,在前端向/ myaction发出ajax请求时,您可以像这样进行响应:

app.post('/myaction', function(req, res) {
  res.render('templateFileToRender', { dataToDynamicallyTurnIntoHTML: data } );
});

Express会呈现您的模板文件,然后将HTML发送到您的前端,然后您将使用呈现的HTML更新前端div或其他内容。

如果您想了解更多信息,请发表评论