【问题标题】:Node uploading mp3 to S3 file size not uploaded节点上传 mp3 到 S3 文件大小未上传
【发布时间】:2020-10-12 05:09:08
【问题描述】:

我正在使用 Node 将 mp3 文件上传到 Amazon S3。当我上传它时,文件大小为 9.0 字节,当我转到公共 url 时,音频文件不播放。这就是我所拥有的,

router.post('/i', async (req, res) => {
  const fileName = 'Voice.mp3';

  fs.readFile(fileName, (err, data) => {
    if (err) throw err;

    const params = {
      Bucket: '',
      Key: '',
      Body: fileName,
      ContentType: 'audio/mpeg',
    };

    s3.upload(params, function (s3Err, data) {
      if (s3Err) throw s3Err;
      console.log(`File uploaded successfully at ${data.Location}`);
    });
  });
});

我有一个名为 Voice.mp3 的本地文件。它使用正确的文件上传,因为当我更改 var 文件名时,它给了我一个错误。

文件名显示在 S3 存储桶中,但大小与实际文件不匹配。

我也将权限设置为可供公众访问。

【问题讨论】:

  • Body: fileName, 你是说Body: data吗?
  • @tkausl 谢谢!这就是问题所在!

标签: javascript node.js amazon-s3 storage


【解决方案1】:

Body 参数设置为fileName,这是文件的名称,而不是文件内容,我认为这是您想要的。

将代码更改为Body: data,它将上传实际的文件内容。

【讨论】:

  • 谢谢!很久没搞清楚了!
猜你喜欢
  • 1970-01-01
  • 2019-12-10
  • 1970-01-01
  • 1970-01-01
  • 2019-09-17
  • 2022-01-14
  • 2012-12-01
  • 2018-09-30
  • 2014-03-06
相关资源
最近更新 更多