如何将Busboy与路由控制器一起使用?

问题描述

我已经为节点使用了路由控制器库,我需要使用Busboy来获取多部分/表单数据。我有这个Busboy代码,如何用路由控制器实现它?

export const upload = (req: any,res: any) => {
  if (req.method !== 'POST') {
    return res.status(405).end();
  }
  const busboy = new Busboy({
    headers: req.headers,limits: {
      fileSize: 10 * 1024 * 1024,},});

  const tmpdir = os.tmpdir();
  const fields: any = {};
  const uploads: any = {};

  busboy.on('field',(fieldname,val) => {
    console.log(`Processed field ${fieldname}: ${val}.`);
    fields[fieldname] = val;
  });

  const fileWrites: any = [];

  busboy.on('file',file,filename) => {
    console.log(`Processed file ${filename}`);
    const filepath = path.join(tmpdir,filename);
    uploads[fieldname] = filepath;

    const writeStream = fs.createWriteStream(filepath);
    file.pipe(writeStream);

    const promise = new Promise((resolve,reject) => {
      file.on('end',() => {
        writeStream.end();
      });
      writeStream.on('finish',resolve);
      writeStream.on('error',reject);
    });
    fileWrites.push(promise);
  }); continue...

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...