【发布时间】:2018-05-09 11:03:46
【问题描述】:
我一直在尝试让一个快速的 node.js api 工作,但我遇到了一些问题,我希望有人能提供帮助。
我正在尝试做的事情:我正在尝试将 base64 编码的图像数据 URI 传递给我的 node.js 并让它将文件保存到我的服务器。我相信我几乎已经让它工作了,但由于某种原因,图像被破坏了。当我只是硬编码 dataURI 时尝试运行脚本时,保存的图像是完美的。但是,当我使用 GET 请求时,保存的文件已损坏,无法打开。
这是我目前所拥有的:
const express = require('express');
const fs = require('fs');
const app = express();
app.listen(3000, () => { console.log
('Running on port 3000...');
});
app.get('/api/users', function(req, res) {
let base64String = req.param('datauri');
let base64Image = base64String.split(';base64,').pop();
fs.writeFile('image.png', base64Image, {encoding: 'base64'}, function(err) {
console.log('File created');
});
res.send(base64Image);
});
任何帮助将不胜感激!
【问题讨论】:
-
经过进一步检查,问题似乎是因为“”(空格)被替换为“+”。知道如何解决这个问题吗?谢谢!
标签: node.js api express get base64