nodejs 剪切图像在上传,并保存到指定路径下(./public/img/' + req.session.token + '.jpg‘)

 

前jQuery端接收数据

 

function upAvatar(img){
  console.log(img); // data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMD…/7vA+eq/xZAlzs/wBYlP8AtlpRRXcc9h++B/8AVyJRs30UVRkM2e9M8s+tFFSBE6UUUUGp/9k=

$.ajax({
url:'/user/upload',
type:'PUT',
data:{
imgData: img
},
success: function (){
       botbox.alert('上传成功!');
        },
error: function (){
bootbox.alert('上传失败,请稍后再试!');
}
});
}

 

Nodejs(express)后端接收数据

 


app.put('/user/upload',function(req,res){
if(req.body.imgData){
var avatar = req.body.imgData.replace(/^data:image\/\w+;base64,/, '');
var fs = require('fs'),
newBuff = new Buffer(avatar, 'base64');
fs.writeFile('./public/img/' + req.session.token + '.jpg', newBuff, 'binary', function (err) {
if (err){
return res.sendStatus(500);
}
res.sendStatus(200);
});
}else{
res.sendStatus(400);
}
});

 

posted on 2015-05-06 11:51  onlyone1221  阅读(690)  评论(0编辑  收藏  举报

导航