【问题标题】:formidable not saying file type to end of file uploaded强大的不说文件类型到文件上传的末尾
【发布时间】:2022-10-07 21:05:52
【问题描述】:

以下代码正在将文件上传到目录,但是它没有将文件扩展名添加到创建的文件中。也不是发回 res.status(200).json({status:'success'});

但是我知道它正在上传它们,因为我可以在文件夹public\files\f754121781049b2ef8557ef21 中看到它,您可以看到它们没有分配扩展文件类型。

import formidable from 'formidable';

export const config = {
  api: {
    bodyParser: false,
  },
};

export default async (req, res) => {
  const form = new formidable.IncomingForm();
  //const uploadFolder = path.join(__dirname, 'public','files');


  form.uploadDir = "public/files";
  form.keepExtensions = true;
  form.parse(req, (err, fields, files) => {
    //console.log(files.campaignAudio.newFilename);
    var file = files[0]

    try{
        const newFile = File.create({
            name:`files\${files.campaignAudio.newFilename}.mp3`
        });
        res.status(200).json({status:'success'});
    }
    catch(error){
        res.send(error);
    }
  });
};

【问题讨论】:

    标签: node.js next.js formidable


    【解决方案1】:

    form.keepExtensions = true;

    是不推荐使用的语法,而是将一个对象传递给强大的函数,其中包含所有选项。

    在您尝试捕获之前,您也没有发现任何错误...

    使用类似的东西

     if (err) {
     res
    return;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-21
      • 1970-01-01
      • 1970-01-01
      • 2021-12-25
      • 2022-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多