【问题标题】:deleting an image in a mean stack application在平均堆栈应用程序中删除图像
【发布时间】:2022-01-28 02:30:03
【问题描述】:

我想删除我在服务器上上传的图像,但每次我收到错误 并且只有 mongodb 文档中的元素被删除 这是我的代码

exports.removeImage = async (req, res) => {
  try {
    fs.unlinkSync('./images/'+req.filename);
    const deleteImage = await Image.findByIdAndDelete(req.params.id)
    
    res.json({ message: 'deleted Image successfully' });
  }
  catch (err) {
    console.log(err);
    res.status(500).json({ message: 'Internal server error' });
  }
}

我认为问题在于 req.filename 它返回一个未定义的值我尝试了 req.body.filename 但仍然没有结果

【问题讨论】:

    标签: node.js mongodb mean-stack


    【解决方案1】:

    我通过添加解决了问题

     const image = await Image.findById(req.params.id)
    

    然后我在 fs.unlinkSync 中使用了 image.filename

    这是结果:

    exports.removeImage = async (req, res) => {
      try {
        const image = await Image.findById(req.params.id)
        fs.unlinkSync('./images/'+image.filename);
        const deleteImage = await Image.findByIdAndDelete(req.params.id)
        
        res.json({ message: 'deleted Inspecstib successfully' });
      }
      catch (err) {
        console.log(err);
        res.status(500).json({ message: 'Internal server error' });
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-02
      • 2018-07-13
      • 2013-12-15
      • 2017-09-05
      • 1970-01-01
      • 2017-11-28
      • 2017-03-21
      相关资源
      最近更新 更多