如何在目录中保存blob url数据

RAC*_*C B 2 javascript php audio blob recording

我正在录音.现在我想直接在本地保存录制的音频.当我录制音频时,它返回blob URL,如:

blob:http://example.com/7737-4454545-545445.

当我点击此URL时,它会播放录制的音频.现在我将jb中的blob URL发送到PHP脚本以保存本地目录,但它无法正常工作.

我怎样才能做到这一点?

gue*_*314 5

Blob URL寿命被链接到document该创建的Blob URLBlobFile对象.Blob URL无法作为Blob存储在快照状态的参考发布到服务器.请参见Blob URL Store.

您可以使用fetch(),Response.blob()Blob表示Blob URL,发布FormData到服务器.

// `blobURL` : `"blob:http://example.com/7737-4454545-545445"`
fetch(blobUrl).then(response => response.blob())
.then(blob => { 
  const fd = new FormData();
  fd.append("fileName", blob, "file.ext"); // where `.ext` matches file `MIME` type  
  return fetch("/path/to/server", {method:"POST", body:fd})
})
.then(response => response.ok)
.then(res => console.log(res))
.catch(err => console.log(err));
Run Code Online (Sandbox Code Playgroud)