如何通过GitHub API v4获取存储库的内容?

时间:2020-02-25 09:16:52

标签: github graphql github-api

我正在尝试将项目从GitHub API v3迁移到v4。 就像我在v3中使用以下RESTful API所做的一样,如何通过GraphQL API获取存储库的文件或目录: GET /repos/:owner/:repo/contents/:path吗?

我已经阅读了GitHub API v4的文档,但找不到任何相关内容。

1 个答案:

答案 0 :(得分:2)

用于搜索目录:

query {
  repository(name: "<repo>", owner: "<owner>") {
    object(expression: "master:") {
      ... on Tree {
        entries {
          name
        }
      }
    }
  }
}

获取文件内容:

query { 
  repository(name: "<repo>", owner: "<owner>") {
    object(expression: "master:<path>") {
      ... on Blob {
        oid
        byteSize
        text
      }
    }
  }
}

参考:https://github.community/t5/GitHub-API-Development-and/GraphQL-getting-filename-file-content-and-commit-date/td-p/17861