Imr*_*nyi 15 dropbox dropbox-api
我们知道Dropbox桌面客户端使用二进制差异算法将所有文件分解为块,并且只上传它在云中没有的块(https://serverfault.com/questions/52861/how-does- dropbox-version-upload-large-files).
不过,据我所知,Dropbox API只能在需要同步时上传整个文件(/ files_put,/ files(POST)).
有没有办法使用Dropbox API进行差异/增量同步,即只上传文件的更改部分,就像桌面客户端一样?
如果无法做到这一点,那么定期同步使用Dropbox API进行少量更改的大型文件的最佳做法是什么?
不幸的是这是不可能的,我怀疑它可能永远不可用。
经过一些研究后,我发现了将增量同步功能集成到 API[*] 中的功能请求。Dropbox 尚未回复,社区也没有投票赞成此请求。
我会做出有根据的猜测,Dropbox 之所以没有提供此功能,而且很可能永远不会提供,是因为这是未知开发人员手中的一个危险功能。
考虑这样的情况:您编写一个使用此类增量更改更新系统来更新大文件的应用程序。您彻底测试您的应用程序并将其发布到应用程序商店。在您首次发布并进行大量下载后几周,您开始收到不好的评论和投诉,因为您错过了一个非常具体的测试用例。
在这个特定的、有问题的情况下,您错误地计算了 1 字节的差分偏移量。不好了!您现在已经损坏了数百个用户的数千个文件!
考虑到这种可能性,我想我个人会要求 Dropbox 永远不要提供这样的开发功能。如果他们将这样的功能集成到 API 中,他们就会打破他们的第一目标——为重要文件提供一致、安全和可靠的云备份。
[*]:这是原来的参考位置,但现在是死链接。
(https://www.dropbox.com/votebox/1515/delta-sync-api-for-mobile-applications)
| 归档时间: |
|
| 查看次数: |
2978 次 |
| 最近记录: |