GitHub 第一次请求时 GraphQL 游标分页

GitHub GraphQL cursor Pagination on first request

您好,我正在使用 Apollo android 从 Github GraphQl

获取带有关键字的存储库列表

我还必须添加基于游标的分页。

这是 .graphql 文件

  query Search($query: String!,$afterCursor: String!){
  search(query:$query, after:$afterCursor,type: REPOSITORY, first: 50) {
    repositoryCount
    edges {
      node {
        ... on Repository {
          id
          name
          description
          forkCount
          owner{
            login
            id
            avatarUrl
          }
        }
      }
      cursor
    }
    pageInfo {
        endCursor
        hasNextPage
      }
  }
}

第一次发送请求时,afterCursor 变量的值是多少

我尝试了 null 但响应失败

我也试过空字符串

提前致谢..

如果您可以从 $afterCursor: String! 中删除 !,那应该可以。

发送 null 或空的问题是它不是一个有效的游标,所以如果我们让它不需要(通过从参数中删除 !),那么你不必发送它全部,这对您第一次 运行 查询有效。`

像这样:

query Search($query: String!, $afterCursor: String){
  search(query:$query, after:$afterCursor,type: REPOSITORY, first: 50) {
    repositoryCount
    edges {
      node {
        ... on Repository {
          id
          name
          description
          forkCount
          owner{
            login
            id
            avatarUrl
          }
        }
      }
      cursor
    }
    pageInfo {
        endCursor
        hasNextPage
      }
  }
}