Node.js:如何在服务器上将 base64 编码的图像保存为 png/jpg

标签 node.js base64

我从客户端向服务器发送一个 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/

相关文章:

Android 位图到 Base64 字符串

Javascript 模块导入失败 - 为什么?

php - 为什么我不能使用 PHP 从 .png 图像到 Base64 编码,再返回到 .png 图像?

ios - Base64 字符串解码后,Swift 无法识别/n 换行符

node.js - 为什么 AWS Lambda 函数总是超时?

php - 无法从 mysqli 进行 Base64 解码

c# - 图片的Base64编码

javascript - 使用express和node.js重定向301。 GET 未被调用

javascript - Should.js - 确定多个对象中的单个字段与单个对象之间的相等性

javascript - 在浏览器上处理大型 json 数组以创建表