Пытался загрузить изображение с помощью Base64, но если строка длинная, нижняя часть сохраненного изображения пустая белая.
загрузить.js
var uuid = require('node-uuid');
var fs = require('fs');
exports.uploadImage = function(base64Str, callback) {
var filename = uuid.v1()+'.png';
var bitmap = new Buffer(base64Str, 'base64');
fs.writeFileSync(filename, bitmap);
callback(filename);
};
сервер.js
var fs = require('fs');
var restify = require('restify');
var server = restify.createServer();
server.use(restify.bodyParser());
var upload = require('./modules/upload');
server.post('/images', function(req, res) {
upload.uploadImage(req.params.myImage, function(filename) {
console.log('processing image');
res.send(filename);
res.end();
});
});
server.listen(3000);
Он работает для строки длиной 499016 байт, но не для строки длиной 847508 байт. Существует ли задокументированное ограничение размера и, если нет, как я могу загружать и декодировать более длинные строки?