如何在Drive API中获取详细的Google doc修订版列表

use*_*462 11 google-api revisions revision-history google-drive-api

我正在尝试找到一种方法来使用Google Drive API检索Google文档修订的详细列表.我试图用Java实现它,它确实返回了10个修订版的列表.但是,这个列表不够详细.如果我转到Google云端硬盘,打开此文件并通过"文件 - 查看修订历史记录"检查修订版,它将返回与我从Drive API获得的相同的列表(10个修订版).但是有一个名为"显示更详细的修订版"的按钮,如果点击它,它将返回详细的修订列表.

有谁知道如何通过Drive API获取此详细列表?或者是否有其他替代方法来获取此详细的修订列表?

Haf*_*ari 1

您应该使用getlist方法来获取 google 驱动器文件的详细修订列表;下面的示例应该可以工作(我还没有测试过):

    /**
       * Print detail information about revisions of the specified file.
       *
       * @param service Drive API service instance.
       * @param fileId ID of the file to print revisions for.
    */
    private static void detailedRevisions(Drive service, String fileId) {
        try {
           RevisionList revisions = service.revisions().list(fileId).execute();
           List<Revision> revisionList = revisions.getItems();

           for(Revision revision : revisionList) {
               revision = service.revisions().get(
                 fileId, revision.getId()).execute();

               System.out.println("Revision ID: " + revision.getId());
               System.out.println("Modified Date: " + revision.getModifiedDate());
               if (revision.getPinned()) {
                   System.out.println("This revision is pinned");
               }
           }
        } catch (IOException e) {
            System.out.println("An error occured: " + e);
        }
    }
Run Code Online (Sandbox Code Playgroud)

检查 Revision 类方法的完整列表: https://developers.google.com/resources/api-libraries/documentation/drive/v2/java/latest/

  • 这不会显示您可以从 Web 界面看到的“更详细的修订”,它只会显示分组在一起的修订。请参阅[这篇文章](http://stackoverflow.com/questions/34955515/google-rest-api-v3-revisionslist-vs-show-more-detailed-revisions)。 (2认同)