javascript - Nodejs - 如何将数据从 html 发送到 hapi

标签 javascript node.js hapi.js

我正在尝试在 Node.js 中将一个值从前端传递到后端,因为您可能知道网络上没有太多关于 Hapi 的文档,并且大多数教程都使用 Angular。

我想简单地将一个变量从我的前端 (HTML) 传递到 Hapi 中的后端。

index.html

 <script>
      $('#messages').submit(function(){
        var word =  $('#m').val();
        //alert(word);
       $('#m').val('');
       return false;
      });

    </script>
  </body>

那么我应该怎么做才能传递这个值呢?谢谢

P.S:我搜索过但找不到与我类似的问题。

最佳答案

首先,您不需要 jquery 来传递值,用户可以直接从 html 表单中执行此操作,如下所示:

<form id="messages" action="./your/path/" method="POST">

  Your variable:
  <br>
  <input type="text" name="your_variable" value="your_value">
  <br>

  <input type="submit" value="Submit">

</form>

如果您出于某种原因需要使用脚本,请在submit()回调中使用带有$.POST的AJAX:

$('#messages').submit(function() {

  $.post("./your/path/", {
      your_variable: "your_value"
    })
    .done(function(data) {
      alert("Data Loaded: " + data); // change for whatever callback you want
    });

  return false;
});

查看jquery documentation阅读 $.post 更多内容。

在后端,从 request.payload 中获取处理程序中的变量:

server.route([{
  method: 'POST',
  path: '/your/path/',
  config: {
      payload: {
          output: 'data'
      }
  },
  handler: function (request, response){
    var your_variable = request.payload.your_variable
  }
}]);

一些有用的 hapi.js 文档链接:request object , server route , route configuration , route handler .

另外,我建议您刷新一下 HTTP 协议(protocol)的知识: wikipedia page on HTTP 还有一本关于 HAPI.js 的新 MEAP 书,可以在 manning.org 上找到 - 我从中学到了 hapi.js,绝对精彩: Hapi.js in Action

关于javascript - Nodejs - 如何将数据从 html 发送到 hapi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35969139/

相关文章:

javascript - 推特 Bootstrap 轮播标题与照片宽度不匹配

javascript - 搜索输入被发送到不同页面上的另一个搜索栏

javascript - 选择继承到下一行的 2 个标记

node.js - 如何从移动应用程序中的私有(private) api 获取背景的即时变化?

node.js - 2个node.js微服务之间的身份验证策略

javascript - 表单时隐藏元素(菜单选择选项为空)

node.js - ES6 Istanbul 尔代码覆盖率 : how to test correctly a branch

javascript - 使用外部 Node 脚本连接到已在index.js中定义的socket-io

javascript - 服务器测试中如何处理setInterval

javascript - Node.js 和 hapi : fetching data from a database synchronously