Javascript 如何将基于URL的mp3文件从客户端上载到节点服务器
我正在尝试使用fetch将mp3文件上载到节点服务器 下面的代码是正确的方法吗Javascript 如何将基于URL的mp3文件从客户端上载到节点服务器,javascript,node.js,express,Javascript,Node.js,Express,我正在尝试使用fetch将mp3文件上载到节点服务器 下面的代码是正确的方法吗 var song; toDataUrl('http://s5.qhres.com/static/465f1f953f1e6ff2.mp3', function(myBase64) { // console.log(myBase64); // myBase64 is the base64 string song = myBase64; }); fetch("/ffmpegserve
var song;
toDataUrl('http://s5.qhres.com/static/465f1f953f1e6ff2.mp3', function(myBase64) {
// console.log(myBase64); // myBase64 is the base64 string
song = myBase64;
});
fetch("/ffmpegserver/upload", {
method: 'PUT',
headers: { 'Accept': 'audio/mpeg', 'Content-Type': 'audio/mpeg' },
body: song
})
.then(response => {
console.log("Got response after uploading song:", response);
})
.catch(error => {
console.log("Error in Firebase AC upload song: ", error);
});
}
如果是这样,我如何接收它并将文件作为mp3写入节点服务器
app.put("/ffmpegserver/upload", (req, res) => {
var mp3SongName = "output/test.mp3";
var mp3_file = fs.createWriteStream(mp3SongName);
// how to write the mp3 file?
}
这段代码在客户端上需要一些东西,将音频传输到一个缓冲区,然后将该缓冲区发送到节点服务器
与此相反,我认为最好的选择是将mp3文件的url发送到节点后端,然后使用axios之类的库下载mp3文件并以某种方式将其保存。此代码需要客户端上的某些内容,将音频压缩到缓冲区,然后将该缓冲区发送到节点服务器 相反,我认为最好的选择是将mp3文件的url发送到节点后端,然后使用axios之类的库下载mp3文件并以某种方式保存它