如何在base.js中将base64视频写入文件

时间:2018-08-21 18:26:35

标签: javascript node.js video base64

我的Express应用程序正在从浏览器接收base64编码的MP4,并将其写入文件。但是该文件不是有效的视频文件,“文件”实用程序只是将其标识为“数据”。

我的代码:

const path = `${config.uploadPath}`;
const filename = `${uniqid()}.mp4`;

let base64Data = req.body.base64.replace(/^data:([A-Za-z-+/]+);base64,/, '');


fs.writeFileSync(`${path}${filename}`, base64Data, 'base64');

1 个答案:

答案 0 :(得分:2)

您确定请求响应是一个名为base64的变量吗?如果是这样,请尝试以下代码:

req.body.base64 = req.body.base64.replace(/^data:(.*?);base64,/, ""); // <--- make it any type
req.body.base64 = req.body.base64.replace(/ /g, '+'); // <--- this is important

fs.writeFile(`${path}${filename}`, req.body.base64, 'base64', function(err) {
    console.log(err);
});