nodejs 图片base64处理
一、base64转图片
var app = require('express')();
app.post('/upload', function(req, res){
    //接收前台POST过来的base64
    var imgData = req.body.imgData;
    //过滤data:URL
    var base64Data = imgData.replace(/^data:image\/\w+;base64,/, "");
    var dataBuffer = new Buffer(base64Data, 'base64'); // 解码图片
    // var dataBuffer = Buffer.from(base64Data, 'base64'); // 这是另一种写法
    fs.writeFile("image.png", dataBuffer, function(err) {
        if(err){
          res.send(err);
        }else{
          res.send("保存成功!");
        }
    });
});
二、图片url转base64
var app = require('express')();
app.get(url,function(res){
  var chunks = []; //用于保存网络请求不断加载传输的缓冲数据
  var size = 0;   //保存缓冲数据的总长度
  res.on('data',function(chunk){
    chunks.push(chunk);  //在进行网络请求时,会不断接收到数据(数据不是一次性获取到的)
    size += chunk.length;  //累加缓冲数据的长度
  });
  res.on('end',function(err){
    var data = Buffer.concat(chunks, size);  //Buffer.concat将chunks数组中的缓冲数据拼接起来,返回一个新的Buffer对象赋值给data
    var base64Img = data.toString('base64');  //将Buffer对象转换为字符串并以base64编码格式显示
    console.log(base64Img);   //进入终端terminal,然后进入index.js所在的目录,
  });
});
三、图片转base64
const fs = require('fs');
let bitmap = fs.readFileSync('start.jpg');
let base64str = Buffer.from(bitmap, 'binary').toString('base64'); // base64编码
console.log(base64str);
        版权声明:
        本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 
              小森森博客!
      
    喜欢就支持一下吧
      
          
          打赏
          
            
               微信
              微信
             
            
               支付宝
              支付宝
             
          
        
       微信
              微信
             支付宝
              支付宝
            