我无法恢复服务器 Express Js 中的 ID 以在我的 BD 中删除

Posted

技术标签:

【中文标题】我无法恢复服务器 Express Js 中的 ID 以在我的 BD 中删除【英文标题】:I can not recover the id in my server Express Js to delete in my BD 【发布时间】:2016-12-19 06:54:09 【问题描述】:

我想从我的 bd 中删除一行以恢复 id。但是没有任何内容被删除。我在 http 中发送了 id。 我没有错误代码,但我的印象是服务器端没有检索到我发送给他的 id。

我的 Service Angular 中的代码:

function removeTask(id)
    var promise = $http(
        method: "DELETE",
        url: GENERAL_CONFIG.API_ENDPOINT + "todos",
        data: id
    ).then(function success(response) 
        return response.data;
        console.log(promise)

    , function error(response) 
        //$rootScope.token = "";
        //$location.path("/home");
    );
    console.log(id);
    return promise;

我的服务器 Express JS 中的代码:

Index.js : 

router.delete('/', function(req,res)
    console.log(req.body);
    var updatePromise = service.removeTodoList(req.body);
    updatePromise.catch(function()
        res.sendStatus(500);
    );   
    updatePromise.then(function(rows)
        res.sendStatus(200);
    );
);

Service.js : 


todoService.removeTodoList = function removeTodoList (id)
    var taskValues = id ;
    console.log(id);
    return dbHandler.query('DELETE FROM todolist WHERE id=?;',[taskValues]);

【问题讨论】:

【参考方案1】:

我认为您的端点网址是url: GENERAL_CONFIG.API_ENDPOINT + "todos", 而在 index.js 中,您使用的是 router.delete('/', function(req,res) 应该是router.delete('/todos', function(req,res)

【讨论】:

如果我添加: router.delete('/todos', function(req,res) var updatePromise = service.removeTodoList(req.body); updatePromise.catch(function() res. sendStatus(500); ); updatePromise.then(function(rows) res.sendStatus(200); ); );我是一个错误 404 !【参考方案2】:

使用

$http(
    method: "DELETE",
    url: GENERAL_CONFIG.API_ENDPOINT + 'todos/' + id
)

router.delete('/:id', function(req,res)
    console.log(req.params.id);
    var updatePromise = service.removeTodoList(req.params.id);
    updatePromise.catch(function()
        res.sendStatus(500);
    );   
    updatePromise.then(function(rows)
        res.sendStatus(204);
    );
);

【讨论】:

以上是关于我无法恢复服务器 Express Js 中的 ID 以在我的 BD 中删除的主要内容,如果未能解决你的问题,请参考以下文章

从 Node.JS 中的未捕获异常中恢复

从 Node.JS 中的未捕获异常中恢复

无法在 LAN 网络上托管 Express.js 应用程序

无法访问我的站点中的链接(复制和粘贴):Node.js - Express.js - Webpack - Vue.js - 历史模式

CRUD RESTful API(Node.js,Express,Mongodb)中的删除错误

无法将 Express.js 服务器连接到 Angular 前端