将WAV文件从浏览器上传到AWS S3,返回空文件

时间:2019-03-15 16:59:48

标签: ajax amazon-s3 wav

我正在从浏览器记录音频数据(保存为.wav文件),并尝试将其上传到带Ajax的AWS S3存储桶中。

该代码的工作方式是将其放入AWS S3存储桶,但一旦进入存储桶,文件似乎为空,并且在下载时未播放任何内容。

我正在使用formData附加blob文件的数据,当我console.log出我的blob文件时,我可以看到它是audio/wav文件类型以及内容的大小文件的是。因此对我来说,该部分似乎正在运行,我可以在浏览器中播放文件。

这是我的ajax请求,它是由onClick事件触发的

 upload.addEventListener("click", function(event){

  var formData = new FormData();
  formData.append('file', blob, filename);

  $.ajax({
    type: 'PUT',
    crossDomain: true,
    url: uploadPreSignedUrl,
    contentType: 'binary/octet-stream',
    processData: false,
    data: formData
  }).success(function(success) {
    console.log('success', success);
  }).error(function(error) {
    console.log('error', error)
  })
})

有人会潜在地看到为什么我要附加到ajax请求的表单数据在AWS S3上显示为空吗?如果需要,我可以附加更多代码

非常感谢您的帮助!

0 个答案:

没有答案