在C#中我正在使用DropNet lib创建一个同步本地文件和Dropbox文件夹的客户端 如果云和本地文件夹中都存在相同的文件,我该如何检查它们是否相同,或者哪两个更新? 如果我将云文件的ModifiedDate与本地文件的LastWriteTime进行比较,则这些日期总是相互冲突,可能是因为客户端时间与保管箱的服务器时间不同。 如何进行有效的文件比较?
答案 0 :(得分:4)
Dropbox API允许您与普通的Dropbox生态系统进行交互,在与Dropbox同步时,单个帐户上可能有超过2个客户端。为了协调这一点,Dropbox服务器被认为是事实的来源。因此,当您与Dropbox同步时,目的是您应该尽快从服务器获取所有更改,并报告服务器的所有本地更改。
沿着这些方向,虽然Dropbox API目前没有提供获取远程文件的文件ID或散列的方法(虽然我们将其作为功能请求添加)但它确实提供了一些方法来了解文件是否具有远程更改,以便您可以更新本地状态。通过/ metadata API调用在特定路径上使用文件的“rev”属性的一种方法:
https://www.dropbox.com/developers/core/docs#metadata
如果自上次检查以来转速已发生变化,则该路径中的文件已更改。
另一种方法是使用/ delta:
https://www.dropbox.com/developers/core/docs#delta
您可以偶尔打电话给我,了解您需要对当地州进行的任何更改,以便及时更新。
答案 1 :(得分:0)