我目前正在研究Kotlin,Reactor,GraphQL,MongoDB项目。
我的graphql构建模式似乎有问题,但我无法弄清楚。
我有一个界面Foo
interface Foo {
id: ID
field1: String
field2: String
}
我还有另一个界面Bar
interface Bar{
id: ID
field1: String
field2: String
这都是接口,因此我通过在RuntimeWiring
上添加一些行来解析它们的类型。
RuntimeWiring.newRuntimeWiring()
/* Shortend for brevity */
.type(newTypeWiring("Foo")
.typeResolver(fooResolvers.fooTypeResolver())
.dataFetcher("bar", barDataFetchers.getBar())
.type(newTypeWiring("Bar")
.typeResolver(barResolvers.barTypeResolver())
...
.build()
当我发送来自bar
的查询Foo
时,它甚至没有到达barDataFetchers.getBar()
。
有什么我想念的吗?
将我的graphql的日志记录级别设置为DEBUG后,
我发现graphql-java使用graphql.schema.PropertyDataFetcher
来获取bar
的数据。
这不是我想要的。它应该使用我自己的dataFetcher barDataFetchers