标签: graphql-java

我如何在Android中使用GraphQl?

我需要一个GraphQl在android中使用的简单示例.

我如何GraphQl在android(教程)中使用.

android graphql graphql-java

5
推荐指数
1
解决办法
4453
查看次数

GraphQL:如何用graphQL-java实现分页?

目前,我看不到graphql-java库中对分页的支持.它确实有一些基本的中继支持,在这里,我们可以创建一个connectionFacebook推荐的分页实现方式.
是帮助实现这一目标的方法.但是,由于没有文档,我发现很难理解这个函数是如何工作的.有人可以打破,走下台阶,他们将采取添加分页支持,如果他们已经有一个现成的模式,它允许像基本的查询Add,delete,fetch等使用graphql-Java库?

java pagination graphql graphql-java

5
推荐指数
1
解决办法
3310
查看次数

如何使用graphql-java上传文件?

如果我使用graphql-java,我不知道如何上传文件,有人可以给我演示吗?我将不胜感激!

参考:https : //github.com/graphql-java-kickstart/graphql-java-tools/issues/240

我在springboot中通过使用graphql-java-kickstart graphql-java-tools尝试了一下,但是没有用

@Component
public class FilesUpload implements GraphQLMutationResolver {

    public Boolean testMultiFilesUpload(List<Part> parts, DataFetchingEnvironment env) {
        // get file parts from DataFetchingEnvironment, the parts parameter is not used
        List<Part> attchmentParts = env.getArgument("files");
        System.out.println(attchmentParts);
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的架构

type Mutation {
    testSingleFileUpload(file: Upload): UploadResult
}
Run Code Online (Sandbox Code Playgroud)

我希望这个解析器可以打印attchmentParts,所以我可以得到文件的一部分。

java file-upload graphql-java

5
推荐指数
2
解决办法
605
查看次数

如何使用 graphql-spqr 访问字段级 Graphql 指令

给定一个 graphql 查询

query @my (arg:1) {
  foo @my (arg:2) {
    bar @my (arg:3)
    foobar @my (arg:4)
  }
}
Run Code Online (Sandbox Code Playgroud)

和graphql服务器实现使用 graphql-spqr

query @my (arg:1) {
  foo @my (arg:2) {
    bar @my (arg:3)
    foobar @my (arg:4)
  }
}
Run Code Online (Sandbox Code Playgroud)
@GraphQLType(name="foo")
public class Foo{
   @GraphQLQuery(name="bar")
   public String bar;
   @GraphQLQuery(name="foobar")
   public String foobar;
}
Run Code Online (Sandbox Code Playgroud)
@GraphQLDirective(name="my", locations = {QUERY, FIELD} )
public class MyGraphqlDirective{
  @GraphqlInputField("arg")
  public int arg;
}
Run Code Online (Sandbox Code Playgroud)

我可以访问(arg:2)查询 foo(如果存在),(arg:1)如果不存在则回退。

但是,如果我想在 foo 和 foobar 字段上阅读它,我会遇到问题。

我想让它不可读,滥用@GraphqlContext每个领域。有没有更简单的方法可以在字段级别存档一些简单的逻辑(例如大写、语言环境、舍入、数字格式)。


还尝试过dataFetchingEnvironment.getSelectionSet().get().getSubField("edge/node/foo/bar").getSingleField().getDirective() …

java graphql graphql-java graphql-spqr

5
推荐指数
0
解决办法
312
查看次数

GraphQL Java:使用@Batched DataFetcher

我知道如何从 datafetcher 中的服务中检索 bean

public class MyDataFetcher implements DataFetcher {
  ...

  @Override
  public Object get(DataFetchingEnvironment environment) {
    return myService.getData();
  }
}
Run Code Online (Sandbox Code Playgroud)

但是具有嵌套列表的模式应该使用 BatchedExecutionStrategy 并使用 @Batched 注释的 get() 方法创建批处理 DataFetcher(请参阅 graphql-java 文档)。

但是我把我的 getData() 调用放在哪里呢?

///// Where to put this code?
List list = myService.getData();
/////

public class MyDataFetcher implements DataFetcher {

  @Batched
  public Object get(DataFetchingEnvironment environment) {
    return list.get(environment.getIndex()); // where to get the index?
  }
}
Run Code Online (Sandbox Code Playgroud)

graphql graphql-java

4
推荐指数
1
解决办法
1594
查看次数

您可以在graphql服务器架构文件中使用片段吗

您可以在graphql服务器架构文件中使用片段吗?你能给我指出一个例子吗

graphql graphql-java

4
推荐指数
1
解决办法
468
查看次数

模式不接受用于映射的 GraphQL Java 自定义标量类型

我尝试为 GraphQL Java 添加自定义标量类型。我需要它来解析 Map 而不为它创建类型,因为它是我逻辑中的常见返回类型。

我按照说明(这里http : //graphql-java.readthedocs.io/en/latest/scalars.html)创建了一个标量类型。

这是我的 MapScalar.java

public class MapScalar {
  private static final Logger LOG = LoggerFactory.getLogger(MapScalar.class);

  public static final GraphQLScalarType MAP = new GraphQLScalarType("Map", "A custom map scalar type", new Coercing() {
    @Override
    public Object serialize(Object dataFetcherResult) throws CoercingSerializeException {
      Map map = null;
      try {
        map = Map.class.cast(dataFetcherResult);
      } catch (ClassCastException exception) {
        throw new CoercingSerializeException("Could not convert " + dataFetcherResult + " into a Map", exception);
      }
      return …
Run Code Online (Sandbox Code Playgroud)

java graphql graphql-java

4
推荐指数
1
解决办法
3203
查看次数

4
推荐指数
1
解决办法
1990
查看次数

Apollo Android 中的多个模式

我在 Android 项目中使用 Apollo 客户端。我有 2 个架构文件,并将它们放在 2 个不同的目录中。

  1. src/main/graphql/com/example/data/search/schema.json
  2. src/main/graphql/com/example/data/user/schema.json

但是当我构建一个项目来通过 Apollo 生成代码时,它给了我一个错误:

ApolloGraphQL: By default, only one schema.json file is supported.

并建议我使用多个服务 构建输出:

ApolloGraphQL: By default, only one schema.json file is supported. Please use multiple services instead: 

apollo {
  service("search") {
    sourceFolder = "/.../app/src/main/graphql/com/example/data/search" 
  }

  service("customer") {
    sourceFolder = "/.../app/src/main/graphql/com/example/data/customer" 
  } 
}
Run Code Online (Sandbox Code Playgroud)

我还将其添加到我的build.gradle(应用程序级别)文件中,但仍然显示相同的构建错误。

请建议我如何解决这个错误

android apollo graphql apollo-client graphql-java

4
推荐指数
1
解决办法
3486
查看次数

如何从 Java Spring Boot 应用程序调用 GraphQL API?是否有支持 GraphQL 查询形成的注释?

我正在寻找一种解决方案来从 spring-boot 应用程序实现 GraphQL api 调用,查询架构如下:

query {
    getDetailsByRefNumber(RefNumbers: "")
    {
        field1,
        field2,
        field3 
    } 
}
Run Code Online (Sandbox Code Playgroud)

有谁知道如何实现这个?通过以下链接之一,但没有找到任何解决方案

是否有任何基于 Java 的 Graphql 客户端可以从 java 代码调用 graphql 服务器?

java spring-boot graphql graphql-java

4
推荐指数
1
解决办法
1万
查看次数