我尝试从我在我正在处理的API项目中创建的mongo数据库中删除字段时出错。我不仅对RESTful API而且对MongoDB和Express都很新。我按照Youtube上的教程解释了制作这样一个API的步骤,所以我做了,一切都很完美。现在,我尝试使用自己的自定义字段重现此API。
基本上我的数据库现在填充了两个元素。我已经创建了获取,添加和更新正常工作的方法。以下是get方法的响应:
[{"_id":"58a112564cb325769b9d90de","name":"John Doe","caption":"I like pizza","friends":["id1","id2","id3"],"schedule":[[13,14],[14,15.5]]},{"_id":"58a1178da52bfc07fd25ce3f","name":"Carla Doe","caption":"I hate pizza","__v":0,"friends":null,"schedule":null}]
现在有问题的功能是删除功能。我似乎无法找到它可能出错的地方。它与前面提到的Youtube教程完全相同。我已经检查了一百次,没有任何字符错误或丢失。
这是我在邮差中得到的错误:
Cannot DELETE /api/clients/58a1178da52bfc07fd25ce3f
这是server.js部分:
// Delete client
app.delete('api/clients/:_id', function(req, res){
var id = req.params._id;
Client.deleteClient(id, function(err, client){
if(err){
throw err;
}
else {
res.json(client);
}
});
});
这是clients.js部分:
// Delete Clients
module.exports.deleteClient = function (id, client, callback) {
var query = {_id: id};
Client.remove(query, client, callback);
};
我不知道我是否会为您提供解决问题所需的所有信息。我不能因为我的爱而找到它的来源。
期待阅读你的答案。
答案 0 :(得分:5)
我认为' /'在' / api / clients /:_ id'
之前缺失它应该是:
app.delete('/api/clients/:_id', function(req, res)