Загрузка записанного аудио на сервер узла js с помощью Multer - PullRequest
0 голосов
/ 23 мая 2019

Я хочу загрузить записанный аудиофайл на сервер Node js, используя multer, но я не получаю файл на сервере.Вот мой код. Что мне делать?

КОД СТОРОНЫ JS КЛИЕНТА:

mediaRecorder.onstop=(e)=>{
          let blob=new Blob(chunks,{'type':'audio/mp3;'});
          chunks=[];
          let audioURL=window.URL.createObjectURL(blob);
          audio.src=audioURL;
          var data = new FormData();
          var request = new XMLHttpRequest();
          data.append('file',blob,'audio.mp3');
          request.open('post','/upload'); 
          request.send(data);
          console.log('File sent');
        }

КОД СТОРОНЫ СЕРВЕРА:

app.post('/upload', upload.single('file'), function (req, res, next) {

          console.log(req.file); 
          var oldpath = req.file;
          var newpath = __dirname;
          fs.readFile(oldpath, function (err, data) {
          fs.writeFile(newpath, data, function (err) {
                if (err) throw err;
                res.end();
            });

  })
})

И сейчас я получаю эту ошибку: См. Вывод здесь и ошибка

Ответы [ 2 ]

0 голосов
/ 23 мая 2019
mediaRecorder.onstop=(e)=>{
      let blob=new Blob(chunks,{'type':'audio/mp3;'});
      chunks=[];
      let audioURL=window.URL.createObjectURL(blob);
      audio.src=audioURL;
      var data = new FormData();
      var request = new XMLHttpRequest();
      data.append('file',blob);
      request.open('post','/upload'); 
      request.send(data);
      console.log('File sent');
    }

enter image description here

это будет работать

0 голосов
/ 23 мая 2019

Установить заголовок типа контента в http запросе

var request = new XMLHttpRequest();
data.append('sound',audioURL);
...