【问题标题】:Is there a way to put Express.Multer.File into a FormData object?有没有办法将 Express.Multer.File 放入 FormData 对象?
【发布时间】:2021-11-06 16:42:12
【问题描述】:

在查找如何将 Express.Multer.File 类型的文件放入 FormData 对象方面需要帮助。

上下文:我正在接收一个类型为 Express.Multer.File 的文件(我使用的是nestjs,所以我使用了文档的这一部分:https://docs.nestjs.com/techniques/file-upload),我需要将其放入 FormData 中以发送它到另一个 API。

我试过 form.append('randomword', file);但我收到以下错误:

TypeError: source.on is not a function
    at Function.DelayedStream.create (xxx/delayed-stream/lib/delayed_stream.js:33:10)
    at FormData.CombinedStream.append (xxx/combined-stream/lib/combined_stream.js:45:37)
...

我清楚地感觉到我做错了,但我有点迷失如何实现这样的目标。

有人可以帮帮我吗?

【问题讨论】:

    标签: javascript file multipartform-data multer


    【解决方案1】:

    我发现了这种方法的“解决方法”。

    • 首先,我得到 Express.Multer.File 类型的文件。
    • 然后我使用 fs 中的 createWriteStream 保存它。
    • 最后,我使用 createReadStream 将其传递给 FormData 对象。

    完成了! 不过,这不是最好的方法,而是一种解决方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-22
      • 2010-12-13
      • 2021-02-04
      • 2020-08-17
      • 1970-01-01
      • 2020-10-22
      • 1970-01-01
      相关资源
      最近更新 更多