我正在尝试使用 Cropit jQuery 插件上传裁剪后的图像,该插件在前端使用 Canvas 。基本上尝试重新创建此处描述的过程:
How to crop and upload photo using cropit jquery plugin with php
我的 Node.js 工作:
var img = //DATA RECEIVED FROM THE POST REQUEST
var decoded = decodeURIComponent(require('url').parse(img, true).path.replace(/\++/g, ' '))
var exp = decoded.replace('data:image/jpeg;base64','').split(',');
var base64 = exp.shift();
var data = base64url.decode(base64);
fs.writeFile('./public/woooo.jpg', data,function(err,done){
if (err){
console.log(err)
}
})
结果是无法打开的图像文件。为什么?我究竟做错了什么?还有其他人解决过这个问题吗?
找到了:
var decoded = decodeURIComponent(require('url').parse(img, true).path.replace(/\++/g, ' '))//base64url.decode(img);
var exp = decoded.split(',');
var base64 = exp.shift();
var data = base64url.decode(base64);
var data_c = data.replace('data:image/jpeg;base64,','')
var buffer = new Buffer(data_c, 'base64');
fs.writeFileSync('./public/woo.jpg', buffer);
我是一名优秀的程序员,十分优秀!