我需要将文件上传到meteor,对其进行一些图像处理(如有必要,图像转换,从图像生成缩略图),然后将其存储在外部图像存储服务器中(s3)。这应该尽可能快。你对nodejs图像处理库有什么建议吗?还有我如何将文件上传到meteorjs?

谢谢

有帮助吗?

解决方案

我最后用以下解决方案:

1)自定义上传URL的Meteor服务器端路由

__meteor_bootstrap__.app.stack.splice (0, 0, {
    route: '/upload',
    handle: function (req,res, next) {
        //handle upload
    }.future ()
});
.

2)在文件上载文件中使用Finulidable NodeJS模块

其他提示

我发现的最简单解决方案是使用filepicker.io。将其集成到Meteor应用程序并直接插入S3是非常容易的。

在我的启动(hausor.com)中我使用 https://github.com/collectionfs/meteor-CollectionFS 以及附加插件,它支持Amazon S3文件上传和图像缩放/裁剪。

我不认为流星对上传有任何支持;也许未来计划的东西。与此同时,我要么(假设你可以用FileReader或其他东西读取文件):

a)将文件插入Mongo,然后将其保存到S3

时删除

b)将其保存到客户端(不确定是否有“安全”方式来执行此操作。即,无需放弃您的凭据,但它可能值得探索)。

c)[如果您无法使用FILEREADER]使用iframe或其他东西将发布到外部服务器,您可以控制该句柄上传,然后从Meteor服务器通信。

请在这里查看我的一个答案 : 使用meteor上传和下载文件

我正在使用busboy进行文件上传,只需使用 fs = Npm.require("fs") 用于文件写入:只要把这些放在busboy:,保存到的是你上传的路径,简单的美国APACHE或文件托管和使用其他端口就可以了。.

file.pipe(fs.createWriteStream(saveTo))

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top