Filestack 是一款完全处理应用程序文件上传的网络服务。
让我们一起想象一个小型网络应用程序。该应用程序允许用户为任何他们想评价的事物撰写评论。用户可以为评论命名,输入评论内容,上传照片,并发布。将名称和文本保存到数据库相对容易,因此这个小型应用程序中最棘手的部分是处理这些照片上传。以下只是一些需要考虑的因素:
- 您需要设计一个用户界面。鼓励用户选择和上传照片的区域是什么样的?当他们准备好上传照片并进行交互时会发生什么?您可能需要设计这种体验。
- 您可能希望支持拖放功能,这将如何运作?
- 您可能希望显示上传进度。这只是良好的用户体验。
- 如今许多人将文件保存在 Dropbox 或其他云服务中,您可以从那里上传吗?
- 多文件上传呢?为评论上传三到四张图片可能很有意义!
- 您是否要限制文件大小?应用程序应该自动处理这一点,对吧?
这当然不是一个完整的列表,但我认为您可以看出其中每一部分都是一堆设计和开发工作。好吧,这就是工作,对吧?是的,但工作更重要的是明智地利用您的时间和金钱,使您的应用程序取得成功。在我看来,明智的做法是认真考虑使用 Filestack 来为您提供绝佳的上传体验,同时将您的时间花在产品愿景上,而不是已经解决的问题上。
对于开发者来说,使用 Filestack 实现上传非常简单
var client = filestack.init('yourApiKey');
client.pick(pickerOptions).then(function(result) {
console.log(JSON.stringify(result.filesUploaded))
});
并且您可以获得像这样功能非常完善的文件选择器
当然,它是完全可配置的。他们的文档非常棒,因此弄清楚如何做到这一切没有问题。想要限制为 3 个文件?当然可以。仅限图片?没问题。仅允许特定的上传集成?由你决定。
我们一开始谈论的是照片。Filestack 特别擅长为您处理照片,部分原因在于它意味着您可以提供真正出色的用户体验(上传任何内容!),同时确保您对这些照片执行所有正确的开发者操作。例如,如果用户上传了一张 5 MB 的照片,没问题,您可以允许他们拖放、修改它,然后您可以提供其调整大小和优化后的版本。

类似的功能也适用于视频、音频和其他特殊文件类型。不要让我阻止您查看所有真正花哨的功能,例如面部识别、过滤、拼贴等等。
从哪里提供服务?这取决于您。如果您确实需要将文件存储在特定位置,您可以这样做。更简单的方法是让 Filestack 充当您的文档存储以及交付文件的 CDN。
在进行此类开发工作时,还需要考虑维护。自行构建系统意味着当情况发生变化时,您需要独自应对。浏览器在不断发展。移动领域瞬息万变。API 也会发生变化。第三方来来往往,给生活带来困难。所有这些问题在 Filestack 中都被抽象化了。
由于所有这些操作都在 JavaScript 中完成,因此 Filestack 可以完美地与您构建网站的任何方式配合使用。如果您也有一个 iOS 应用程序,请不要担心,他们也为此提供了 SDK!