javascript - 将请求发送到页面,不执行成功函数

标签 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');
        }
});

在 Node 中我有以下内容:

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

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

最佳答案

在 Node 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');
});

您只能发送一个回复。

关于javascript - 将请求发送到页面,不执行成功函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44750149/

相关文章:

javascript - 使用PHP将JSON插入MySQL表

javascript - 如何使用脚本将页面上已有的选定信息获取到页面的另一部分

javascript - NodeJS 等待 HTTP 请求

javascript - 如何使用 VSTS Node API 设置积压迭代?

node.js - Bitbucket Pipelines - 访问另一个容器

javascript - jQuery ScrollTop .. ."disable"当击中屏幕底部时

javascript - 在 Nodejs 中找不到模块 - module.js

javascript - yii2 动态形式文本框的总和

asynchronous - 在node.js应用程序中,如何异步实现rails Controller before_filter的效果?

javascript - 如何模拟返回 promise 的对象?