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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CRUD RESTful API(Node.js,Express,Mongodb)中的删除错误相关的知识,希望对你有一定的参考价值。

在此示例中,我使用猫鼬。尝试删除时,显示以下错误Cannot DELETE /5e69e2fde0fa464ee01dd68d

我无法终生发现问题所在。我是Node.js,MongoDB和创建RESTful API的完整入门者下面给出的代码是我要删除的功能。

router.delete('/:id', getSubscriber, async (req, res) => {
    try {
      await res.subscriber.remove()
      res.json({ message: 'Deleted Subscriber' })
    } catch (err) {
      res.status(500).json({ message: err.message })
    }
  })

这里是getSubscriber函数

async function getSubscriber(req, res, next) {
  let subscriber
  try {
    subscriber = await Subscriber.findById(req.params.id)
    if (subscriber == null) {
      return res.status(404).json({ message: 'Cannot find subscriber' })
    }
  } catch (err) {
    return res.status(500).json({ message: err.message })
  }

  res.subscriber = subscriber
  next()
}

感谢您的帮助。谢谢您的时间。

答案
router.delete('/:id', getSubscriber, async (req, res) => {
try {

   //Here try creating an instance of your model.
   //I think your schema is named subscriber so
   const deleteSuscriber = await Suscriber.remove({_id:req.params.id});
   res.json(deleteSuscriber);

} catch (err) {
  res.status(500).json({ message: err})
}
});

这里表达会将变量放入传入请求的req.params中。希望这有效!Here you can find the documentation on making CRUD Rest API

以上是关于CRUD RESTful API(Node.js,Express,Mongodb)中的删除错误的主要内容,如果未能解决你的问题,请参考以下文章

保护 Node.js RESTful API

Node.js RESTful API

[Node.js] Test Node RESTful API with Mocha and Chai

编写 Node.js RESTful API 的 10 个最佳实践

用LoopBack搭建Node.js的 RESTful API环境

ionic 后台Api服务, 使用rest-hapi , node.js 创建 RESTful API Service , 附完整源代码