Node.js s3中的图像已损坏

Node.js s3中的图像已损坏,node.js,amazon-s3,aws-sdk,aws-sdk-nodejs,wasabi-hot-cloud-storage,Node.js,Amazon S3,Aws Sdk,Aws Sdk Nodejs,Wasabi Hot Cloud Storage,这是我的上传代码(节点) 该对象实际上到达了桶。它有超过0个字节。它大约是源图像的一半,但我只是假设有人在压缩它(芥末什么的)。 我使用的是express fileupload,我的配置为: app.use(fileUpload({ createParentPath: true, limits: { fileSize: 2 * 1024 * 1024 * 1024 //2MB max file(s) size }, useTempFiles

这是我的上传代码(节点)

该对象实际上到达了桶。它有超过0个字节。它大约是源图像的一半,但我只是假设有人在压缩它(芥末什么的)。 我使用的是express fileupload,我的配置为:


app.use(fileUpload({

    createParentPath: true,

    limits: {
        fileSize: 2 * 1024 * 1024 * 1024 //2MB max file(s) size
    },

    useTempFiles: true,

    tempFileDir: "/tmp/",

}));
最后,我直接从wasabi web客户端下载了这个文件,并尝试在图像查看器中打开它,他们都说文件中有错误或不支持该文件类型(即.png,因此它是受支持的)。 图像只有约150kb。
从本质上讲,该文件已到达那里,但已损坏。

utf8
是一种文本编码。但是
.png
不是文本。只需删除编码选项,它就会工作。

非常感谢您,因为某些原因,其他答案将此作为答案。我认为如果你从缓冲区读取数据,你就可以这样做。

app.use(fileUpload({

    createParentPath: true,

    limits: {
        fileSize: 2 * 1024 * 1024 * 1024 //2MB max file(s) size
    },

    useTempFiles: true,

    tempFileDir: "/tmp/",

}));