发布页面请求,而不是执行成功函数

时间:2017-06-25 20:08:07

标签: javascript node.js

我的javascript文件中包含以下代码:

$.ajax({type: 'POST',
        url: '/',
        data: {test: 'This is some random data.'},
        dataType: 'json',
        success: function(){
            console.log('success');
        },
        error: function(){
            console.log('err');
        }
});
节点I中的

具有以下内容:

app.post('/', function (req, res){
    console.log(req.body.test);
});

我的命令控制台正确记录了json对象,但我的网页没有执行on success功能。我不明白为什么如果正确传递和接收数据,我的ajax请求中会调用错误函数?

1 个答案:

答案 0 :(得分:1)

在节点js方面,你必须给出一个对请求的响应,否则客户端不知道它是怎么回事,所以不能触发成功或错误回调:

app.post('/', function (req, res){
    console.log(req.body.test);
    res.end();
    // or to send json back
    // res.json({hello: 'world'});
    // to go in error callback just send a request with a status code > 400
    // res.status(400).end('bad request');
});

您只能发送一个回复。