是否有独立的工具将模块化的graphql架构转换为json架构?
我有一个使用apollo-graphql和graphql-tools makeExecutableSchema
的graphql服务器。它遵循描述here
// schema.js
import { makeExecutableSchema } form 'graphql-tools';
const Author = `type Author { ... }`;
const Post = `type Post { ... }`;
const Query = `type Query { ... }`;
export const typeDefs = [Author, Post, Query];
export const schema = makeExecutableSchema({
typeDefs: typeDefs,
resolvers: { ... },
});
如何创建schema.json
表单typeDefs
或schema
?
我需要一个json架构才能使用relay-compiler
或apollo-codegen
。 apollo-codegen
包含此脚本以从graphql server创建模式...
apollo-codegen introspect-schema http://localhost:8080/graphql --output schema.json
...但我想创建架构,并在自动构建中运行apollo-codegen。我不想创建服务器。
我会将此作为答案提交,但问题已被标记为主题¯\ _(ツ)_ /¯
@ daniel-rearden的回答指出了我正确的方向。 makeExecutableSchema
会返回GraphQLSchema
,因此可以使用graphql
的{{1}}和printSchema
来获取架构的json或graphql语言表示。
introspectionQuery
答案 0 :(得分:1)
有graphql-to-json。我相信有一个CLI工具可以做到这一点。
或者,您可以编写自己的脚本,然后使用node
执行它。您不必启动服务器来运行查询,只需要一个模式,您就可以直接对它运行查询。您可以查看示例here。