使用服务器下载图像并服务于前端

时间:2016-09-20 03:06:17

标签: node.js meteor amazon-s3

我遇到了一个尝试从S3(Converting Image URL to base64 - CORS issue)中提取图像的CORS问题。

我正在生成PDF文件时使用图像几秒钟。有没有办法可以让Meteor下载图片并服务几秒钟以便我可以解决CORS问题?

我不能让Meteor一直只为这些图像服务,因为它们有很多,而且它们会因不同的报告而改变。

1 个答案:

答案 0 :(得分:0)

我最终通过这样做解决了CORS问题:

import { request } from "meteor/froatsnook:request";

Meteor.methods({
    convertImage: function(imageUrl) {
      try {
        var result = request.getSync(imageUrl, {encoding: null});
        return 'data:image/png;base64,' + new Buffer(result.body).toString('base64');
      } catch(e) {
        throw new Meteor.Error("cant-download", "Error: Can't download image.");
      }
    }
});