参数'自''字段'历史'具有无效值。预期类型'GitTimestamp'

时间:2018-01-16 09:19:58

标签: github github-api github-graphql

我正在使用Github的GraphQL(v4)API进行一些调用。我正在尝试获取有关存储库的提交信息,但我在定义since对象的history连接的Commit属性时遇到问题。

我收到以下错误:

{
    "data": null,
    "errors": [
        {
            "message": "Argument 'since' on Field 'history' has an invalid value. Expected type 'GitTimestamp'.",
            "locations": [
                {
                    "line": 38,
                    "column": 9
                }
            ]
        }
    ]
}

这是我的GraphQL的提取部分导致错误:

query {
    search(query:"is:public", type:REPOSITORY, first:10){       
        edges{
            node{
                ... on Repository{
                    ref(qualifiedName: "master"){
                        target{                         
                            ... on Commit{                              
                                history(first: 10, since:"2017-07-15"){                                 
                                    totalCount
                                    pageInfo{
                                        startCursor
                                        endCursor
                                    }
                                    edges{
                                        node{
                                            ... on Commit{
                                                committedDate
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

根据documentationGitTimestamp标量是 ISO-8601 编码的日期字符串。那么,我的字符串"2017-07-15"有什么问题?我也尝试过以下字符串,但都没有用。

  • 2017年1月1日
  • 2017年1月1日
  • 2017-01-01 01:01
  • 2017-01-01T01:01
  • 2017-01-01 01:01Z
  • 2017-01-01T01:01Z

1 个答案:

答案 0 :(得分:4)

您必须以YYYY-MM-DDTHH:MM:SSZ格式指定日期。以下内容适用:

  • 2017-01-01T01:01:00
  • 2017-01-01T01:01:00Z

Try it in the explorer

{
  search(query: "is:public", type: REPOSITORY, first: 10) {
    edges {
      node {
        ... on Repository {
          ref(qualifiedName: "master") {
            target {
              ... on Commit {
                history(first: 10, since: "2017-01-01T01:01:00") {
                  totalCount
                  pageInfo {
                    startCursor
                    endCursor
                  }
                  edges {
                    node {
                      ... on Commit {
                        committedDate
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}