无法删除错误CRUD API(NodeJS,MongoDB,Express)

时间:2017-02-13 15:42:37

标签: node.js mongodb express crud

我尝试从我在我正在处理的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);
};

我不知道我是否会为您提供解决问题所需的所有信息。我不能因为我的爱而找到它的来源。

期待阅读你的答案。

1 个答案:

答案 0 :(得分:5)

我认为' /'在' / api / clients /:_ id'

之前缺失

它应该是:

app.delete('/api/clients/:_id', function(req, res)