Express MongoDB,& Mongoose DELETE与findByIdAndRemove()然后重定向

时间:2018-01-15 18:52:28

标签: javascript node.js mongodb express

我目前正在尝试使用DELETE方法,但似乎res.redirect没有触发。

正如您所看到的,我正在尝试使用findByIdAndRemove()删除MongoDB中的记录:

  app.delete("/car", (req, res) => {
    Car.findByIdAndRemove(req.body.id, (err, car) => {
      res.redirect('/');
    });
  });

当我通过Postman发送带有id的DELETE请求时,服务器没有响应并且似乎挂起。

知道为什么会这样吗?我希望删除id过去的记录,然后重定向到主页。

由于

1 个答案:

答案 0 :(得分:1)

你必须处理mongodb返回的错误,如果查询抛出错误或req.body.idundefined页面将挂起,因为你没有{{1}终止请求/响应周期3}}对于客户,这是一个例子:

app.delete("/car", (req, res) => {

    Car.findByIdAndRemove(req.body.id, (err, car) => {

        // check if query error
        if (err) {
            console.log(err);
            return res.json({ success: false });
        }

        res.redirect('/');
    });
});