Blob saved as [object Object] Nodejs Blob saved as [object Object] Nodejs angularjs angularjs

Blob saved as [object Object] Nodejs


I finally got this working. The approach to get this to work is to encode the blob on the client, and decode it on the server.

Frontend:

// converts blob to base64var blobToBase64 = function(blob, cb) {  var reader = new FileReader();  reader.onload = function() {    var dataUrl = reader.result;    var base64 = dataUrl.split(',')[1];    cb(base64);  };  reader.readAsDataURL(blob);};blobToBase64(blob, function(base64){ // encode  var update = {'blob': base64};  $http.post('/api/save_recording', update)    .success(function(new_recording) {      console.log("success");    });});    

Backend:

exports.saveRecording = function(req, res) {  var buf = new Buffer(req.body.blob, 'base64'); // decode  fs.writeFile("temp/test.wav", buf, function(err) {    if(err) {      console.log("err", err);    } else {      return res.json({'status': 'success'});    }  }); };