我无法恢复服务器 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 - Express.js - Webpack - Vue.js - 历史模式