如何在删除 ajax [NODE.JS] 中使用成功回调

How use the success call back in a delete ajax [NODE.JS]

我正在使用以下代码删除数据库中的一个集合:

客户:

$('.destroy').click(function() {

    if(confirm("Are u sure?")) {
        $.ajax({
            type: 'DELETE',
            url: '/destroy/' + dataId,
            success: function(response) {
                console.log('Success');
            }
        });
    } else {
        alert('Cancelled');
    }
});

服务器:

app.get('/destroy/:id', function(req, res) {
    var id = req.param("id");

    MyModel.remove({
        _id: id 
    }, function(err){
        if (err) {
            console.log(err)
        }
        else {
            console.log('Collection removed!');
        }
    });
});

正在工作,如果我点击销毁按钮并重新加载页面,集合将不存在,但是成功回调函数没有运行:[console.log('Success');]..

我需要从服务器向客户端发送一个回调,以便成功函数运行???

如何制作 console.log('Success');运行??

谢谢。

ajax 调用可能只是超时,因为它从未从服务器获得响应。

从服务器发送响应

app.get('/destroy/:id', function(req, res) {
    var id = req.param("id");

    MyModel.remove({
        _id: id 
    }, function(err){
        if (err) {
            res.end('error');
        }
        else {
            res.end('success');
        }
    });
});

然后抓住它

$.ajax({
    type    : 'DELETE',
    url     : '/destroy/' + dataId,
    success : function(response) {

       if ( response === 'error' ) {

           alert('crap!');

       } else if (response === 'success' ) {

           alert('worked fine!');

       }

    }
});

这是一个简化的例子,你可以return任何你喜欢的,发送statusCodes什么的。