向页面显示POST的结果

时间:2017-10-18 22:05:19

标签: javascript node.js ajax express

我正在使用node.js / express,并且我有一个带有表单的视图 - 它形成一个路由,然后返回一个路径。

我希望(至少从一开始)发送我的表单,并将返回的数据显示在表单下方(在同一视图中)。

在最常见的表达方式中做到这一点的最佳方法是'可能吗?

理想情况下没有页面刷新。

Ajax会做我以后的事情 - 但这是一个很好的方式吗?

感谢您的任何见解

1 个答案:

答案 0 :(得分:2)

您正在寻找的最低限度看起来像这样:

客户端

fetch('your_endpoint', {
    method: 'POST',
      body: JSON.stringify(formData),
  }).then((response) => {
    // success
    return response.json();
  })
  .then((data) => {
    // add data to DOM
  })
  .catch((error) => {
    // failed to send
  });
}

使用Expressjs的服务器端

router.post('/your_endpoint', (req, res, next) => {
    // process request
    res.status(200).json({ "data": your_data });
});