我正在使用 (MySQL)EAN 堆栈开发 Web 应用程序。我在 MySQL 中将 png/jpg/pdf 保存为 BLOB。现在,我可以使用 Sequelize.js 在 Node.js 中将它们检索为 Buffer 对象:
exports.loadUploadedFiles = function(req, res) {
db.File.findAll().success(function(files) {
//res.send(files[0].dataValues.data.toString('ascii')); // I have tried to convert a Buffer to ascii and sent it to Angular.js, however, I still don't know how to transform them to a file link.
res.send(files); // How can I return the Buffer objects to Angular.js
}).error(function(err) {
console.log(err);
res.sendStatus(500);
});
};
我尝试了两种方法:
将缓冲区对象返回给 Angular.js,然后找到一种方法从它们生成可下载链接。
使用 bufferObject.toString('ascii') 将 Buffer 对象转换为 ascii,然后找到将这些 ascii 转换为可下载链接的方法
我已经尝试了一天,但仍然无法在两种方法中弄清楚:(,任何建议将不胜感激!
最佳答案
我认为#1 是最佳选择。 将缓冲区转储到文件系统上可公开访问的目录中的文件可能是最好的选择。
关于javascript - 如何将 Buffer 对象转换为 Node.js 中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27723894/