I am working on the audio record. Now I want to save that recorded audio in our local directly. When I record audio it is returning blob URL like:
blob: http://example.com/7737-4454545-545445.
When I hit this URL it plays recorded audio. Now I am sending that blob URL from js to PHP script to save your local directory but it is not working.
How can I do that?
Blob URL
lifetime is linked to document
which created Blob URL
from Blob
or File
object. Blob URL
cannot be posted to server as reference for a Blob
stored at snapshot state. See Blob URL Store.
You can use fetch()
, Response.blob()
to get Blob
representation of Blob URL
, post FormData
to server.
// `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));