使用GraphQL(v4 API)在GitHub中搜索代码

埃里克·布罗达(Eric Broda):

我正在使用GitHub的GraphQL API搜索包含特定单词的文件/代码。下面显示了一个简单的(人为)搜索示例,在这种情况下,该示例是在“某用户”(存储库的所有者)的“配方”(存储库)中的文件中找到“牛肉”一词:

{
  search(query: "beef repo:someuser/recipes", type: REPOSITORY, first: 10) {
    repositoryCount
    edges {
      node {
        ... on Repository {
          name
        }
      }
    }
  }
}

我在GitHub的GraphQL Explorer(https://developer.github.com/v4/explorer/)中尝试了此操作,并从搜索中收到零个结果,这是不正确的,因为我可以确认单词(上面示例中的“牛肉”)是在仓库中的文件中:

{
  "data": {
    "search": {
      "repositoryCount": 0,
      "edges": []
    }
  }
}

当我通过curl使用GitHub的REST API(v3)尝试此操作时,我肯定会得到结果:

curl --header 'Accept: application/vnd.github.v3.raw' https://api.github.com/search/code?q=beef+repo:someuser/recipes

...因此,我知道查询(REST v3 API)是有效的,并且我的理解是GraphQL(v4)API中的查询字符串与REST(v3)API相同。

我的问题是:

  1. 我是错误地使用了GitHub GraphQL(v4)API,还是我不正确地指定了查询字符串,还是试图使用尚不支持的功能?
  2. 有人可以提供(或链接到)如何说明特定单词搜索代码的示例吗?
sreenivas:

Type: CODE目前尚不支持。您目前无法使用graphql搜索代码。

您的理解是正确的。只是您缺少一件。您正在执行的搜索是针对的type: REPOSITORY如果您将搜索替换为

search(query: "beef", type: REPOSITORY, first: 10) {

您将获得所有以牛肉为名的回购协议。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用GitHub Search API在GitHub fork中搜索代码?

我想使用googlesheet api v4删除googlesheet中的行

如何使用OData v4在Web Api 2中配置Serilog

如何使用Java处理Google Sheets API v4中的JSON字符串

使用Github Api V4从Github存储库中获取最新的x个提交

尝试使用API v4在Google表格中写行时出错

GitHub API v4:如何遍历分页?(GraphQL)

针对组织和用户的GitHub v4 API查询

如何使用Github的v4 GraphQL API按编号查询拉取请求?

如何使用Github的v4 GraphQL API按用户查询审阅请求?

如何在PHP中使用api v4从Google表格中删除行

使用GitHub API v4 GraphQL查找属于用户拥有的存储库的所有未解决问题

在Google Sheets API v4使用限制中是否将服务帐户视为用户?

GitHub API v4(GraphQL)中的几个突变?

如何在React Router V4中使用上下文API?

Github v4 GraphQL API。按日期获取提交

GraphQL复杂cURL查询(GitHub API v4)

GitHub GraphQL API v4与REST API v3

是否存在任何可与GitHub API v4配合使用的nodejs库?

您可以使用octokit.net库使用raw graphQL语法在C#中查询github API v4吗?

使用github API v4 graphQL获取提交更改的文件和补丁

如何使用graphql(v4 API)访问github存储库内容?

使用API在源文件中搜索Github存储库

如何通过GitHub API V4搜索特定页面

使用GitHub GraphQL API v4查询单个存储库中的所有提交

Github使用分页搜索Api?

使用Python在Google Sheets API v4中编写

无法使用 PHP API v4 在 Google 表格中附加行

使用 googlesheet api v4 删除类型“列表中的一个”