您的位置:首页 > Web前端 > Node.js

nodejs canvas to base64 and post server write to image

2014-05-13 17:46 429 查看
客户端代码呈现

<canvas id="cs" width='200' height='200'>
</canvas>
<input type="button" value="button" onclick="send()" />
<img id='pic' />
<script type="text/javascript">
function send() {
var cs = document.querySelector('#cs');
var ctx = cs.getContext('2d');
ctx.fillStyle = '#c00';
ctx.fillRect(0, 0, 120, 200);
var src = cs.toDataURL('image/png', 0.1);
document.querySelector('#pic').src = src;
$.ajax({
url: '/upbase64',
dataType: 'json',
data: 'pic=' + src,
type: 'POST',
success: function(data) {
$("#pic").attr('src', data.src)
}
})
}

服务端:

var base64Data = req.body.pic.replace(/^data:image\/\w+;base64,/, "");
fs.writeFileSync('./public/addd.png',new Buffer(base64Data, "base64"));
res.end();
});


本地的时候这样都没问题,这块要注意到的是;
 在post 到 服务端的时候  base64有可能 把  base64的 +换成空格了 

var base64Data = imgData.replace(/\s/g,"+");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nodejs server canvas base64