gpt4 book ai didi

graphql - 使用 Apollo Server 时如何生成 schema.graphql 文件?

转载 作者:行者123 更新时间:2023-12-04 09:37:42 24 4
gpt4 key购买 nike

使用 Apollo Server 编写 GraphQL 服务器时,如何在服务器上运行命令生成 schema.graphql文件供客户使用?注意:我没有使用 Apollo 客户端,我使用的是 Relay。
我知道我可以运行 GraphQL 游乐场并从那里下载它,但我想要一个可以自动化的命令行。
我正在寻找类似于 rake graphql:schema:dump 的内容使用 GraphQL Ruby 时您可以在服务器上运行它来生成 schema.graphql .

最佳答案

您可以为此使用 Apollo CLI。首先安装它:

npm install -g apollo
然后运行此命令,如 docs 所示。 :
apollo client:download-schema --endpoint=URL_OF_YOUR_ENDPOINT schema.graphql
该命令将根据用于输出文件的扩展名在 SDL 中生成自省(introspection)结果或模式。
您的 ApolloServer instance 不会公开它创建的模式,但您也可以直接对实例运行自省(introspection)查询:
const { getIntrospectionQuery, buildClientSchema, printSchema } = require('graphql')
const { ApolloServer } = require('apollo-server')

const apollo = new ApolloServer({ ... })
const { data } = await apollo.executeOperation({ query: getIntrospectionQuery() })
const schema = buildClientSchema(data)
console.log(printSchema(schema))
如果您要传递现有的 GraphQLSchema实例到 Apollo Server,你也可以直接调用 printSchema直接上它。

关于graphql - 使用 Apollo Server 时如何生成 schema.graphql 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62483120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com