如何从图像URL创建multer文件

问题描述 投票:0回答:1

我需要先从公共网址下载图像,将下载的图像文件转换为multer文件,这样我才能调用现有的api,然后再上传multer文件。我已经尝试过axios responseType: "blob"responseType: "arraybuffer",但是在将两个响应都转换为Express.Multer.File时遇到了麻烦。我有点需要将其作为multer文件,因为在上传到s3存储之前,我们还会从multer文件缓冲区生成哈希。使用打字稿,我想到了这样的东西:

let imageResponse = await axios.get(imageURL, { responseType: "arraybuffer" });
let file: Express.Multer.File = {
             buffer: Buffer.from(imageResponse.data, "binary"),
             fieldname: "fieldname",
             originalname: "imageName.jpg",
             encoding: "binary",
             mimetype: "image/jpg",
             destination: __dirname,
           }

我知道这看起来非常错误,但是,我不确定如何解决这个问题。

node.js typescript express blob multer
1个回答
0
投票

种类繁多,无需转换为multer文件即可解决,而只需制作一个具有buffer属性的类似文件的对象。

© www.soinside.com 2019 - 2024. All rights reserved.