我从客户端向服务器发送一个 PNG 作为 base64 字符串。我将其解码并保存到服务器。但该文件不可读为 png。我必须添加特定的标题吗?我究竟做错了什么?这是我的代码:
var base = decodedBase64;
fs.writeFile("/tmp/test.png", base, function(err) {
if(err) {
console.log(err);
} else {
console.log("The file was saved!");
}
});
最佳答案
fs.writeFile("/tmp/test.png", base, "binary", function(err) {
if(err) {
console.log(err);
} else {
console.log("The file was saved!");
}
});
默认的编码
是utf-8
。您不想将其保存为文本,而是希望将其作为二进制数据进行保护,因此请传入 binary
编码。
关于Node.js:如何在服务器上将 base64 编码的图像保存为 png/jpg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5669541/