Javascript jQuery表单提交到远程节点服务器API

Javascript jQuery表单提交到远程节点服务器API,javascript,jquery,forms,node.js,Javascript,Jquery,Forms,Node.js,(这是一个简短的免责声明,我认为您不需要对Node或Express了解太多才能回答这个问题!这在jQuery表单提交结束时是一个非常重要的问题) 我在Wordpress上设置了一个表单,我想将其数据发送到我的Node.js进程。节点进程位于http://localhost:5000/agm/saveNewUser并接受POST命令,我已验证该命令是否有效。节点服务器位于Express的顶部 我无法将数据从前端表单获取到节点。表单如下所示: <form class="form-horizon

(这是一个简短的免责声明,我认为您不需要对
Node
Express
了解太多才能回答这个问题!这在jQuery表单提交结束时是一个非常重要的问题)

我在Wordpress上设置了一个表单,我想将其数据发送到我的
Node.js
进程。节点进程位于
http://localhost:5000/agm/saveNewUser
并接受
POST
命令,我已验证该命令是否有效。节点服务器位于
Express
的顶部

我无法将数据从前端表单获取到节点。表单如下所示:

<form class="form-horizontal classy-form franklin-book ng-pristine ng-valid" id="signup" role="form">
    <div class="form-group">
        <label class="col-md-2 control-label" for="inputName">
        Name </label>
        <div class="col-md-10">
            <input class="form-control" id="inputName" type="text" mouseev="true" keyev="true">
        </div>
    </div>
    <div class="form-group">
        <label class="col-md-2 control-label" for="inputEmail">
         Email
        </label>
        <div class="col-md-10">
            <input class="form-control" id="inputEmail" type="email">
        </div>
    </div>
    <div class="form-group">
        <label class="col-md-2 control-label" for="inputLocation">
         Location
        </label>
        <p>
        </p>
        <div class="col-md-10">
            <input class="form-control" id="inputLocation" type="text">
        </div>
    </div>
    <div class="radio">
        <label><input id="optionsRadios1" type="radio" checked="checked" name="optionsRadios" value="option1">Start the course from Monday</label>
    </div>
    <div class="radio">
        <label><input id="optionsRadios2" type="radio" name="optionsRadios" value="option2">Start the course from today</label>
    </div>
    <div class="form-group">
        <div class="col-md-10">
            <button id="formSubmit" class="btn btn-default" type="submit"><br>
             Get in contact</button>
        </div>
    </div>
</form>
我的节点服务器设置为:

exports.saveNewUser = function (req, res) {
    console.log("Saving a new user");
    console.log(req);
    console.log(res);
   // These console.logs are just to debug so I can see if the form data is being posted correctly
};
目前,我的
节点
控制台记录了一大堆内容,但与表单的实际输入无关。我试过:

$('#signup').ajaxForm({url: 'http://localhost:5000/agm/saveNewUser/', type: 'post', data: $('#signup').serialize()})

但是这会导致表单根本没有击中我的
节点
服务器。

我不知道jQuery表单插件是如何工作的,但是由于以下原因,您无法将AJAX请求发送到不同的端口。

当您将jQuery表单插件从等式中去掉时会发生什么
$.post(
,{foo:'foo'})有记录吗?@将修复一些问题。数据现在正以
{foo:'bar}
的形式进入
节点的
req.body
中。关于如何在此处获取表单数据的建议?下一个调试步骤:填写表单,不提交表单,然后在浏览器控制台中执行
$(“#注册”).serialize()
。看起来像你期望的那样吗?对不起,我对你正在使用的表单插件一无所知。不过,不用插件就可以很容易地进行异步表单提交(如果这是问题的话)。请参阅,您不能简单地使用表单标记中的method属性将表单作为POST提交吗?您可以向任何来源发布AJAX帖子。还可以将目标服务器配置为发出CORS头,CORS头是专门为允许AJAX GET请求跨源而设计的。或者,如果支持,可以使用JSONP。
$('#signup').ajaxForm({url: 'http://localhost:5000/agm/saveNewUser/', type: 'post', data: $('#signup').serialize()})