【问题标题】:Connecting jquery frontend to nodejs backend将 jquery 前端连接到 nodejs 后端
【发布时间】:2020-07-25 19:40:18
【问题描述】:

我对节点 js 还很陌生。 试图构建一个网络应用程序。目前,让前端和后端单独运行良好,并且两者都托管在同一个端口上。前端包含表单,我希望将从表单获取的数据发送到后端。 后端有前端可以访问的api,但两者都无法连接。

app.use('/cssFiles',express.static(__dirname + '/testhomepg/testhomepg/'));
app.get('/', function(req, resp) {
    resp.sendFile('home.html', {root:path.join(__dirname, '../Frontend/testhomepg/testhomepg')});
})

app.get(/^(.+)$/, function(req,resp) {                   // getting data from the form
    console.log(req.params[0] + ' GET')
    resp.sendFile(req.params[0], {root:path.join(__dirname)});
})

app.post('/register', function(req, resp) {              // Trying to connect to the backend
    console.log('Data:' + JSON.stringify(req.body));
    resp.json({message: 'message recieved!!!'})
})

$(function() {                                                // function called on clicking 'Submit'
    $('form').submit(function() {
      
        var obj1 = $('form').serializeObject();
        var obj2 = {person: "tutor"};
        var data = $.extend({}, obj1, obj2);

        $(location).attr('href', './thankyou.html')
        return false;
    });
});

非常感谢您对此的任何帮助 谢谢!

【问题讨论】:

  • 只是个人喜好,但如果我是你,我会开始远离 JQuery。纯 JavaScript 可以做你需要做的所有事情,而 JQuery 本质上是内置的!

标签: node.js frontend backend


【解决方案1】:

您必须进行 ajax 调用才能连接到后端 api

$(function() {                                                
$('form').submit(function() {
    var obj1 = $('form').serializeObject();
    var obj2 = {person: "tutor"};
    var data = $.extend({}, obj1, obj2);    
    $.ajax({type: 'POST', url: "/register", data,
         success: function(result){
         console.log(result)
        }});
    });
});

【讨论】:

    猜你喜欢
    • 2021-09-14
    • 1970-01-01
    • 2019-11-14
    • 1970-01-01
    • 2015-07-26
    • 2021-12-22
    • 1970-01-01
    • 2016-11-04
    相关资源
    最近更新 更多