使用REST API的Dropbox差异/增量上传

我们知道Dropbox桌面客户端使用二进制比较算法将所有文件分解为块,并且仅上载云中尚未存在的块(https://serverfault.com/questions/52861/how-does- Dropbox的版本上传大型文件)。

尽管如此,据我所知,Dropbox API只能在需要同步时上传整个文件(/ files_put,/ files(POST))。

是否有任何方法使用Dropbox API进行差异/增量同步,即只上载文件的已更改部分(如桌面客户端)?

如果这不可行,那么使用Dropbox API定期同步大文件的最佳做法是什么?


不幸的是,这是不可能的,我怀疑它可能永远不可用。

在做了一些研究之后,我发现了一个将delta-syncing集成到API中的功能请求。 Dropbox没有回应,社区也没有提出这个请求。

我会做一个有根据的猜测,Dropbox之所以没有提供这种功能,可能永远不会,因为这是未知开发人员手中的危险功能。

考虑使用这种增量更新更新系统来更新大文件的应用程序的情况。 您彻底测试您的应用并将其发布到应用商店。 在最初发布几周后,以及大量下载,你开始接受糟糕的评论和投诉,因为你错过了一个非常具体的测试用例。

在这个特定的错误情况下,您错误地计算了一个1字节的差分偏移量。 不好了! 您现在损坏了数百个用户的数千个文件!

考虑到这种可能性,我想我会亲自要求Dropbox永远不要提供这样的开发功能。 如果他们将这样的功能集成到API中,他们将打破他们的首要目的 - 为您的重要文件提供一致,安全且可靠的云备份。

链接地址: http://www.djcxy.com/p/69073.html

上一篇: Dropbox differential/incremental uploads using REST API

下一篇: Using Git and Dropbox together effectively?