如何以编程方式恢复dropbox中的文件



我是IOS中dropbox开发的新手,我还在学习在我的应用程序中实现dropbox,该应用程序是一个文本编辑器,我想让它支持在dropbox中上传和下载文件。在我的应用程序中,我可以对文本进行一些更改,然后将其上传到dropbox中,但我无法将其恢复到上一个版本。我已经阅读了Dropbox Rest API和https://api.dropbox.com/1/restore/<root>/<path>

但是我不知道该怎么办,有人能帮我吗?

感谢

试试这个

/*将路径中的文件还原为给定版本时的文件,并返回已还原文件的元数据恢复后的文件*/

- (void)restoreFile:(NSString *)path toRev:(NSString *)rev;

其中path是必须还原的DropBox文件的路径,rev是必须还原到的修订版

其委托方法是

- (void)restClient:(DBRestClient*)client restoredFile:(DBMetadata *)fileMetadata;
- (void)restClient:(DBRestClient*)client restoreFileFailedWithError:(NSError *)error;

你可以使用这些来获得特定文件的修订列表

/*加载最多10个DBMetadata对象的列表,这些对象表示路径*/处文件的过去修订

- (void)loadRevisionsForFile:(NSString *)path;

/*与上面相同,但对返回的DBMetadata对象数量有可配置的限制,最多为1000*/

- (void)loadRevisionsForFile:(NSString *)path limit:(NSInteger)limit;

他们的委托方法是

- (void)restClient:(DBRestClient*)client loadedRevisions:(NSArray *)revisions forFile:(NSString *)path;
- (void)restClient:(DBRestClient*)client loadRevisionsFailedWithError:(NSError *)error;

示例

    NSString *filePath = @"/Contacts";
    NSString *revisionStr = @"a1067dc176";   // sample revisionString
    [[self restClient] loadRevisionsForFile:filePath limit:10];
    [[self restClient] restoreFile:filePath toRev:revisionStr];

//委托方法

- (void)restClient:(DBRestClient*)client loadedRevisions:(NSArray *)revisions forFile:(NSString *)path{
    for (DBMetadata *file in revisions) 
    {
        NSLog(@"MetaData's Revisions t%@", file.rev);
    }
}
- (void)restClient:(DBRestClient*)client loadRevisionsFailedWithError:(NSError *)error{
}
- (void)restClient:(DBRestClient*)client restoredFile:(DBMetadata *)fileMetadata{
    NSLog(@"Restored FileMetaData Path : %@",fileMetadata.path);
        NSLog(@"Restored FileMetaData rev : %@",fileMetadata.rev);
}
- (void)restClient:(DBRestClient*)client restoreFileFailedWithError:(NSError *)error{
     NSLog(@"There was an error restoring the file - %@", error);
}

最新更新