【问题标题】:Uploading images to server in NodeJS+Multer?在 NodeJS + Multer 中将图像上传到服务器?
【发布时间】:2015-12-05 21:42:21
【问题描述】:

我有一个表单,用于将图像上传到用 NodeJS+Multer 编写的后端。后端检查文件大小和文件类型,因此不允许用户上传任何其他文件,然后是 png/jpg/gif。但是,没有什么能阻止用户将 .zip(或任何其他类型)文件重命名为 .png 并上传到我的服务器。这会将文件存储在图像位置,稍后可能会在请求时返回给浏览器。

所以现在我的问题是这是否是我应该关注的事情?它可以用来对我的服务器或稍后将在浏览器中检索此假图像的用户造成任何损害吗?如果是这样,我该如何防止这种情况?我必须以某种方式检查图像是否是有效的图像文件?我必须使用 Lwip 之类的东西吗?

【问题讨论】:

    标签: node.js express image-uploading multer


    【解决方案1】:

    您可以查看文件的mimetype

    //File filter to send only videos  
    const fileFilter = (req, file, cb) => {
        // reject a file
        console.log(file.mimetype);
        if (file.mimetype.match(/^video\/\w+/)){
            cb(null,true);
        } else {
            console.log('File Extension not Allowed');
            cb(null, false);        
        }
     };
    
     //Multer
     const upload = multer({
       storage: storage,
       fileFilter: fileFilter
     });
    

    【讨论】:

      猜你喜欢
      • 2021-05-03
      • 1970-01-01
      • 2015-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多