【问题标题】:Nodejs - How to send data from html to hapiNodejs - 如何将数据从 html 发送到 hapi
【发布时间】:2016-03-15 06:24:35
【问题描述】:

我正在尝试在 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:我搜索但找不到与我类似的问题。

【问题讨论】:

标签: javascript node.js hapijs


【解决方案1】:

首先,你不需要 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 objectserver routeroute configurationroute handler

另外,我建议您更新有关 HTTP 协议的知识: wikipedia page on HTTP 以及一本关于 HAPI.js 的新 MEAP 书籍,可在 manning.org 上找到 - 我从中学到了 hapi.js,非常棒: Hapi.js in Action

【讨论】:

  • 不错的推荐 ;)
  • @Alan 最后!谢谢人。但我不明白我的问题的负面影响。
  • @Matt hey man 我看到了你的文章sitepoint.com/creating-and-handling-forms-in-node-js 如果你在一个框架中完成它并在最后放出代码会更好。
  • 没问题,祝你的项目好运 :-) - 哈哈,我给你一个积极的缓解痛苦 ;)
  • @Mojtaba 不是我写的
猜你喜欢
  • 1970-01-01
  • 2019-09-01
  • 1970-01-01
  • 2021-01-01
  • 2018-01-11
  • 1970-01-01
  • 2019-03-11
  • 2014-07-02
  • 2021-07-25
相关资源
最近更新 更多