当前位置: 首页 > 知识库问答 >
问题:

使用*的内省graphql模式。graphqls文件

罗浩然
2023-03-14

目前我正在使用com.graphql-java-kickstart库和Spring引导来运行图形服务器。现在,对于契约测试,我希望有能力生成json模式,就像我在做请求/Graql/schema.json时一样。但没有运行服务器,仅基于. graph qls文件。

有什么基于jvm的(更好的)工具可以帮助我吗?

共有1个答案

徐鸿文
2023-03-14

我已经找到了使用graphql java库的解决方案。也许这对我以外的人有用。

    ObjectMapper mapper= new ObjectMapper()
    Collection<File> files = FileUtils.listFiles(inputDir, new String[]{"graphqls"}, true);

    SchemaParser schemaParser = new SchemaParser();
    TypeDefinitionRegistry mergedDefinitoionRegistry = new TypeDefinitionRegistry();
    files.forEach(file -> {
        TypeDefinitionRegistry typeDefinitionRegistry = schemaParser.parse(file);
        mergedDefinitoionRegistry.merge(typeDefinitionRegistry);
    });

    SchemaGenerator schemaGenerator = new SchemaGenerator();
    GraphQLSchema graphQLSchema = schemaGenerator.makeExecutableSchema(mergedDefinitoionRegistry, RuntimeWiring.MOCKED_WIRING);

    GraphQL graphQL = GraphQL.newGraphQL(graphQLSchema).build();
    ExecutionResult executionResult = graphQL.execute(IntrospectionQuery.INTROSPECTION_QUERY);

    return mapper.writeValueAsString(executionResult);
 类似资料:
  • 有人能帮助我如何使用spqr-spring-boot-starter获取模式文件吗? 我在网上寻找解决方案,发现了这个:如何使用SPQR获取生成的方案文件. graph qls? 但是我不确定我应该为架构传递什么?由于我使用的是 spqr-Spring-启动启动器,因此我没有编写任何与 GraphQLSchema 实例相关的内容。 我需要模式文件来启用Postman中的自动完成功能。请协助,如果你

  • 我真的很喜欢SPQR使图形ql与现有系统轻松集成的方式,我唯一希望看到的是文件,这样我就可以了解有关图形QL语法的更多信息。 有没有办法从现有的代码中生成集成了SPQR注释的scheme文件? 为了提供一些代码,让我们使用来自GitHub站点的相同代码 实体: 服务等级: 预期产出:

  • 因此,根据graphql-java-kickstart/graphql-java-kickstart tools,当依赖项'com.graphql-java-kickstart:graphql-spring-boot-starter'被添加到项目中,并且.graphqls模式文件被自动扫描时,'graphql'endpoint将变得可用。 我有以下依赖关系: 架构定义: 和一个GraphQLQue

  • 我正在查看用Scala编写GraphQL服务器的Sangria库。但奇怪的是,同一个类型系统必须实现两次:(1)作为GraphQL类型声明的一部分,(2)也是在服务器端,作为Scala case类,附带ObjectType、InterfaceType等。 在Scala中硬编码类型系统尤其令人厌烦,因为我的目的是能够CRUD任意形状的聚合,其中每个形状都被定义为类型的GraphQL集合。例如,假设S

  • 我正在尝试创建一个GraphQL Spring Boot应用程序,以便在现有REST Web API之上创建一个GraphQL层,但在处理模式中的HashMap时遇到了问题。 类有一个名为的字段,它是HashMap。我试图将它定义为一个类型列表,这是一个键/值对,但我得到了以下错误: 这是我的架构文件: 还有我的模特班: 我找到了这个线程返回HashMap 模式: Servlet注册: pom.x

  • 在电池省电模式下,M600 的某些活动将减少,以延智能手表的电池寿命。电池省电模式将限制以下内容: 振动 位置服务 Wi-Fi 和移动使用率 数据和应用更新 息屏提醒 要打开/关闭电池省电模式 从主屏幕顶部向下滑动 轻触设置图标。 轻触系统。 轻触电池省电模式,在打开(开关为蓝色)和关闭(开关为灰色)间切换。 通过轻触复选标记图标,确认打开电池省电模式。