在 GitHub GraphQL API 上过滤空节点

Dan*_*515 7 github-api graphql

我正在尝试使用 GITHUB 的 V4 API 来获取我分配的问题及其标签和参考文献的列表。

一段时间后,我收到了您可以在下面看到的查询,它完全按照我想要的方式工作。

然而,有一个问题:它包含很多我不感兴趣的空节点。例如,如果我想获取所有存在问题的 CrossReferencedEvent,我将在时间轴边缘数组上得到很多空节点,因为其他事件:LabeledEvent、ReferencedEvent、AssignedEvent 等。

如何过滤掉这些事件,以便只获取我感兴趣的事件?这是 graphql 的限制吗?我是否被迫在本地删除无用的节点?这是我目前的查询

{
  search(query: "assignee:danielo515", type: ISSUE, last: 100) {
    edges {
      node {
        ... on Issue {
          number
          title
          state
          timeline(first: 10) {
            edges {
              node {
                ... on CrossReferencedEvent {
                   source{
                    ... on Issue {
                      title
                      number
                    }
                  }
                }
              }
            }
          }
          labels(last: 10) {
            nodes {
              name
              color
            }
          }
          repository {
            name
          }
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我可以做的一项改进是,在查询部分添加is:issue. 这会 。将所有空节点保存在根边缘数组中,但我不知道如何对嵌套时间轴执行相同的操作。

提前致谢