首页 > 解决方案 > 如何通过流上传和调整大小?

问题描述

sharp我在通过和将调整大小的图像上传到亚马逊 s3 时遇到问题readStream。它只上传第一块图像。但是当我创建一个 writeStream 并在本地保存文件时,一切正常。

return new Promise((resolve, reject) => {
  const readableStream = fs.createReadStream(pathToUserFile);
  const transformer = sharp().resize(300, 250);

  readableStream.pipe(transformer);

  const params = {
    Bucket: S3_BUCKET_NAME,
    Body: readableStream, 
    ACL: 'public-read',
    Key: `S3_BUCKET_PATH/${name}`,
    ContentType: type
  }

  s3.upload(params, (err, data) => {
    if (err) reject(err);
    if (data) resolve();
  })
});


也许我做错了什么?我可以将调整大小的文件保存到磁盘并发送...但我想发送文件而不进行本地保存

标签: node.jsamazon-s3uploadstreamsharp

解决方案


推荐阅读