我认为您正在转换的数据比您需要的更多。一旦使用正确的编码创建了缓冲区,您只需要将缓冲区写入文件即可。
var base64Data = req.rawBody.replace(/^data:image/png;base64,/, "");require("fs").writeFile("out.png", base64Data, 'base64', function(err) { console.log(err);});
new
Buffer(…,’base64’)通过将输入解释为base64编码的字符串,将输入字符串转换为Buffer,它只是字节数组。然后,您可以将该字节数组写入文件。
如评论中所述,
req.rawBody已不再是一回事。如果使用
express/
connect,则应使用
bodyParser()中间件并使用
req.body,并且如果使用标准Node进行此 *** 作,则需要聚集传入的
data事件
Buffer对象,并在
end回调中进行此图像数据解析。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)