我正在尝试将一个blob对象发送到我的Node.js服务器。在客户端,我使用MediaRecorder录制一些音频,然后希望将文件发送到我的服务器进行处理。
saveButton.onclick = function(e, audio) {
var blobData = localStorage.getItem('recording');
console.log(blobData);
var fd = new FormData();
fd.append('upl', blobData, 'blobby.raw');
fetch('/api/test',
{
method: 'post',
body: fd
})
.then(function(response) {
console.log('done');
return response;
})
.catch(function(err){
console.log(err);
});
}
这是我的 Express 路由,使用了 multer:
var upload = multer({ dest: __dirname + '/../public/uploads/' });
var type = upload.single('upl');
app.post('/api/test', type, function (req, res) {
console.log(req.body);
console.log(req.file);
// do stuff with file
});
但是我的日志没有返回任何内容:
{ upl: '' }
undefined
已经花费很长时间在这上面,所以任何帮助都将不胜感激!
var upload = multer({ dest: __dirname + '/../public/uploads/' }); var type = upload.single('upl');
- darkaceBlob {size: 6937, type: "audio/wav"} size : 6937 type : "audio/wav" __proto__ : Blob
- darkacecontent-type:multipart/form-data; boundary=----WebKitFormBoundaryuXIvVIjDViONFgyd
。 - darkace