我想使用AJAX将图像上传到我的节点服务器;
从应用程序中我做了以下内容:
var canvas = document.getElementById('canvas' + index);
var dataURL = canvas.toDataURL();
$.ajax({
type: "POST",
url: "http://localhost:9001/uploadimages",
data: {
imgBase64: dataURL
}
}).done(function(o) {
console.log('all_saved');
});
在节点服务器中:
GMserver.post('/uploadimages', function(req, res) {
var data_url = req.body.imgBase64;
var matches = data_url.match(/^data:.+\/(.+);base64,(.*)$/);
var ext = matches[1];
var base64_data = matches[2];
var buffer = new Buffer(base64_data, 'base64');
fs.writeFile(__dirname + '/images', buffer, function (err) {
res.send('success');
console.log('done');
});
});
GMserver.listen(process.env.PORT || 9001);
嗯,需要1.5分钟才能完成;然后,即使它从节点的控制台说“完成”而从浏览器的控制台说“all_saved”,图像目录中也没有任何文件;
谁知道我做错了什么?