首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >nodejs中保存图片的字节数组

nodejs中保存图片的字节数组
EN

Stack Overflow用户
提问于 2015-05-19 17:35:51
回答 1查看 3.7K关注 0票数 1

我正在工作的项目使用后端作为Mongoose,nodejs和express。前端是一个android application.The API是使用Mongoose,nodejs和express创建的,android应用程序使用我的API来获取和设置数据。现在我必须创建一个post API '/uploadImage',这样android应用程序将只将图像的'byte array‘作为post数据传递给'/uploadImage’。我必须解析图像的字节数组,并将图像保存到一个目录中。

我尝试使用formidable上传文件的代码:

代码语言:javascript
复制
exports.uploadFile = function(req, res) {
    var dirpath = config.root + '/files/Documents/';
    var form = new formidable.IncomingForm();
    form.parse(req, function(err, data, files) {
        fs.readFile(files.file.path, function(err, data) {
            var newPath = dirpath + files.file.name;
            fs.writeFile(newPath, data, function(err) {
                if (!err) {
                    var filePath = '/files/Documents/' + files.file.name;
                    res.send(filePath);
                }
            });
        });
    });
};

这工作得很好。在这里我得到的是文件,而不是字节array.So,我能够将文件保存到各自的目录中,我不知道它将如何处理字节数组。

EN

回答 1

Stack Overflow用户

发布于 2016-11-16 17:08:26

我用下面的方法解决了这个问题。

代码语言:javascript
复制
 var rawImg = req.body.imageByteArray,
    base64Data = rawImg.replace(/^data:image\/png;base64,/, ''),
    dirpath = config.root + '/files/Documents/',
    imageName = req.body.filename + '.png',
    imageLocation = dirpath + imageName;
  fs.writeFile(imageLocation, base64Data, 'base64', function(err) {});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30321868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档