0

假设我有一个类似媒体池的项目。基本上我希望能够上传您可以上传的任何文件(图像、视频、pdf 等)。

我正在考虑使用 refile,因为它支持动态处理图像,这很好,因为将有一个图像 api 应该让用户请求他需要的任何大小的图像。

但是,我将如何处理 pdf 上传或视频上传(甚至视频处理)?

是否有更好的选择来重新归档?

非常感谢!

4

1 回答 1

1

首先,文件附件库一般可以上传任何类型的文件。最受欢迎的是PaperclipCarrierWave。它们使您能够处理上传,这适用于视频。但是,它们不允许您即时处理。

另一方面,DragonflyRefile专为动态处理而设计。Refile 的一个优点是它支持直接上传。Refile 的一个缺点是您必须通过其 Rack 应用程序提供所有文件,因此如果您在 S3 上上传了您不会处理的视频,您仍然需要为第一次非缓存渲染支付性能损失。Dragonfly 的一个优点是它具有更高级的动态处理支持,并且它还允许您在上传时进行处理。

最后,我们来到神社。Shrine 是为上传处理而设计的,它是唯一一个原生支持后台作业的库,这对于像视频转码这样的长时间处理特别有用。如果您想将处理委托给第 3 方服务,Shrine 也有一个Transloadit集成。但是您也可以使用 Shrine 进行即时处理,使用Cloudinary 之类的服务,甚至连接 Dragonfly(参见这篇文章)。Shrine 支持直接上传,例如 Refile。其他一些值得注意的功能包括:元数据支持日志记录灵活的文件验证可恢复上传,更好的安全性等。

由于 Shrine 可以说比任何其他文件附件库具有最多的功能和灵活性,我会推荐它。

于 2016-11-26T05:59:47.670 回答