Я использую эту функцию createDownloadLink, которая принимает BLOB-объекты и создает ссылку для загрузки, чтобы загрузить аудио, а также создает ссылку для загрузки, чтобы загрузить BLOB-объект в бэкэнд Django, используя xmlHttpRequest, когда я написал функцию для просмотра и просмотра данных BLOB-объектов.он не показывает данных POST
function createDownloadLink(blob) {
var url = URL.createObjectURL(blob);
var au = document.createElement('audio');
var li = document.createElement('li');
var link = document.createElement('a');
//name of .wav file to use during upload and download (without extendion)
var filename = new Date().toISOString();
//add controls to the <audio> element
au.controls = true;
au.src = url;
//save to disk link
link.href = url;
link.download = filename+".wav"; //download forces the browser to donwload the file using the filename
link.innerHTML = "Save to disk";
//add the new audio element to li
li.appendChild(au);
//add the filename to the li
li.appendChild(document.createTextNode(filename+".wav "))
//add the save to disk link to li
li.appendChild(link);
//upload link
var upload = document.createElement('a');
upload.href="/show";
upload.innerHTML = "Upload";
upload.addEventListener("click", function(event){
let blob = new Blob(chunks, {type: media.type });
var xhr=new XMLHttpRequest();
xhr.onload=function(e) {
if(this.readyState === 4) {
console.log("Server returned: ",e.target.responseText);
}
};
var fd=new FormData();
fd.append("audio_data",blob, filename);
//fd.append('csrfmiddlewaretoken', $('#csrf-helper input[name="csrfmiddlewaretoken"]').attr('value'));
xhr.open("POST","/show/",true);
xhr.setRequestHeader('csrfmiddlewaretoken', $('#csrf-helper input[name="csrfmiddlewaretoken"]').attr('value'));
xhr.send(fd);
})
li.appendChild(document.createTextNode (" "))//add a space in between
li.appendChild(upload)//add the upload link to li
, и тогда моя функция просмотра выглядит следующим образом
def solve(request):
print('its working')
blob = request.FILES['audio_data']
print(blob)
return render(request,'display.html')
Я просто хотел посмотреть данные BLOB-объектов, чтобы использовать их для дальнейшего анализа