Date 错误未知类型“;日期时间“;关于gql的阿波罗有效载荷

Date 错误未知类型“;日期时间“;关于gql的阿波罗有效载荷,date,graphql,apollo-server,payload,gql,Date,Graphql,Apollo Server,Payload,Gql,我有很多问题,但这次我的问题是GraphQL及其负载,我的schema.gql和resolvers.js文件如下所示: # schema.gql scalar GraphQLDateTime scalar GraphQLDate scalar GraphQLTime type Query { magicQuery( idMagic: Int magicDate: GraphQLDateTime

我有很多问题,但这次我的问题是GraphQL及其负载,我的
schema.gql
resolvers.js
文件如下所示:

    # schema.gql
    scalar GraphQLDateTime
    scalar GraphQLDate
    scalar GraphQLTime
    
    type Query {
      magicQuery(
        idMagic: Int
        magicDate: GraphQLDateTime
      ): DamnWow
    }
    
    type DamnWow {
      _id: String
      magicDateResult: GraphQLDateTime
    }
当我尝试将有效负载用于这样的查询时:

    # query
    query magicQuery($idMagic: Int, $magicDate: DateTime) {
      magicQuery(idMagic: $idMagic, magicDate: $magicDate) {
        _id
        magicDateResult
      }
    }
    
    # variables
    # {
    #   "idMagic": 1,
    #   "magicDate": "2007-12-03T10:15:30Z"
    # }
它将返回一个错误:

    {
      "error": {
        "errors": [
          {
            "message": "Unknown type \"DateTime\".",
            "locations": [
              {
                "line": 1,
                "column": 45
              }
            ],
            "extensions": {
              "code": "GRAPHQL_VALIDATION_FAILED",
              "exception": {
                "stacktrace": [
                  "GraphQLError: Unknown type \"DateTime\".",
                  "    at Object.NamedType (/home/alex/workspace/team/node_modules/graphql/validation/rules/KnownTypeNamesRule.js:57:29)",
                  "    at Object.enter (/home/alex/workspace/team/node_modules/graphql/language/visitor.js:323:29)",
                  "    at Object.enter (/home/alex/workspace/team/node_modules/graphql/utilities/TypeInfo.js:370:25)",
                  "    at visit (/home/alex/workspace/team/node_modules/graphql/language/visitor.js:243:26)",
                  "    at Object.validate (/home/alex/workspace/team/node_modules/graphql/validation/validate.js:69:24)",
                  "    at validate (/home/alex/workspace/team/node_modules/apollo-server-core/dist/requestPipeline.js:221:34)",
                  "    at Object.<anonymous> (/home/alex/workspace/team/node_modules/apollo-server-core/dist/requestPipeline.js:118:42)",
                  "    at Generator.next (<anonymous>)",
                  "    at fulfilled (/home/alex/workspace/team/node_modules/apollo-server-core/dist/requestPipeline.js:5:58)"
                ]
              }
            }
          }
        ]
      }
    }
{
“错误”:{
“错误”:[
{
“消息”:“未知类型\“日期时间\”,
“地点”:[
{
"线":一,,
“栏”:45
}
],
“扩展”:{
“代码”:“图形验证失败”,
“例外情况”:{
“stacktrace”:[
“GraphQLError:未知类型\“DateTime\”,
“在Object.NamedType(/home/alex/workspace/team/node_modules/graphql/validation/rules/knowntypeanmesrule.js:57:29)”中,
“在Object.enter(/home/alex/workspace/team/node_modules/graphql/language/visitor.js:323:29)”中,
“在Object.enter(/home/alex/workspace/team/node_modules/graphql/utilities/TypeInfo.js:370:25)”中,
“在访问时(/home/alex/workspace/team/node_modules/graphql/language/visitor.js:243:26)”,
“在Object.validate(/home/alex/workspace/team/node_modules/graphql/validation/validate.js:69:24)”中,
“在验证(/home/alex/workspace/team/node_modules/apollo server core/dist/requestPipeline.js:221:34)”时,
“at Object.(/home/alex/workspace/team/node_modules/apollo server core/dist/requestPipeline.js:118:42)”,
“at Generator.next()”,
“完成时(/home/alex/workspace/team/node_modules/apollo server core/dist/requestPipeline.js:5:58)”
]
}
}
}
]
}
}
如果我在代码中使用相同的参数directy,它就可以正常工作


有人知道此错误的原因吗?

架构中的标量类型名称是
GraphQLDateTime
,但在请求中使用的是
DateTime

尝试将请求更改为:

query magicQuery($idMagic: Int, $magicDate: GraphQLDateTime) {
  magicQuery(idMagic: $idMagic, magicDate: $magicDate) {
    _id
    magicDateResult
  }
}

只是模式中没有
DateTime
type/scalar。。。在查询(arg类型)中尝试
GraphQLDateTime
?这很有效。非常感谢。
query magicQuery($idMagic: Int, $magicDate: GraphQLDateTime) {
  magicQuery(idMagic: $idMagic, magicDate: $magicDate) {
    _id
    magicDateResult
  }
}