我在服务器端使用带有Java的graphql,在客户端使用带有javascript的graphql / apollo。通常,我对设置非常满意,但是最近我陷入了DataFetchingEnvironment的问题。
我有两个graphql查询,它们在客户端被相同地调用。在服务器端,解析程序方法将DataFetchingEnvironment作为参数,以便获取上下文并从传入的cookie中检索值。
一个查询完美执行,并读取cookie值。在另一个查询中,DataFetchingEnvironment作为空值进入。
我不知道为什么会这样。是否有任何原因或条件导致graphql-java解析器方法不应该接收数据获取环境?关于为什么会这样的任何想法?
这是我的pom依赖项,用于显示版本号。
<groupId>com.graphql-java</groupId>
<artifactId>graphql-spring-boot-starter</artifactId>
<version>3.10.0</version>
<groupId>com.graphql-java</groupId>
<artifactId>graphql-java-tools</artifactId>
<version>4.3.0</version>
<groupId>com.graphql-java</groupId>
<artifactId>graphql-java-servlet</artifactId>
<version>4.6.0</version>
<groupId>com.zhokhov.graphql</groupId>
<artifactId>graphql-datetime-spring-boot-starter</artifactId>
<version>1.1.0</version>
这是令人讨厌的解析器方法的骨架版本:
public List<Something> getSomething( String somethingId, DataFetchingEnvironment dataFetchingEnvironment ) {
log( dataFetchingEnvironment ); // result is null
}