Meteor服务器

时间:2016-06-03 05:33:07

标签: javascript mongodb meteor

我有一个Meteor应用程序,允许用户上传图像。 图像上载的结果存储在CollectionFS中。 然后,系统用于接受或拒绝图像,并将图像推送到第三方SQL数据库。为此,我使用HTTP.get从Meteor应用程序中提取图像,将其从二进制转换为十六进制,并使用存储过程将其推送到SQL数据库。

我的问题在于HTTP.get响应并将其转换为十六进制。

var imageData = Images.find({_id: imageId}).fetch();
var studentId = imageData[0].metadata.ownerStudentID;
result = HTTP.get(Meteor.absoluteUrl()+imageData[0].url());
imageString = new Buffer(result.content,'binary').toString('hex');

'imageString'的结果确实是十六进制字符串,但它与使用十六进制编辑器测试的图像不匹配。它实际上有很大不同。 hex editor

在使用CollectionFS之前,我使用标准的Mongo.Collection并存储图像的base64版本,然后使用上面相同的想法将其转换为十六进制,这很好用。它只是因为我必须切换到CollectionFS并通过HTTP.get检索图像已发生此问题。

有什么想法吗?

0 个答案:

没有答案