下载模式文件
Apollo iOS需要输入一个GraphQL模式文件作为其代码生成过程的输入。您可以在JSON格式(通常是 introspection查询的结果)或GraphQLSDL(模式定义语言)中提供您的模式。
通常,JSON文件具有.json
文件扩展名,SDL文件使用SDL文件扩展名。
下载GraphQL模式有以下几种方法:
1. Apollo Studio
Apollo Studio是一个云平台,可以帮助您构建、验证和保护组织的图。
在Apollo Studio的“模式”标签的SDL视图中,有一个下拉菜单,您可以选择下载关联的模式以SDL或JSON格式。
以下是一个截图,显示Apollo Studio中的 StarWars GraphQL API。在右侧,您可以看到允许下载两种格式的下拉菜单。
请参阅 文档,以了解更多关于如何使用Apollo Studio的信息。
2. 代码生成CLI
代码生成CLI提供了一种方便的命令行工具,用于获取GraphQL模式并将其写入文件。
有关如何使用该命令的详细信息,请参阅 fetch-schema
命令的文档。
代码生成CLI还支持在代码生成过程中首先获取GraphQL模式。这自动获取模式并确保您始终使用最新的模式。
有关如何使用的详细信息,请参阅 generate
命令的文档。
Apollo模式注册表和GraphQL 查询 都支持作为下载的方法。
Apollo模式注册表
Apollo模式注册表作为管理您的 graph 的中心枢纽。在核心上,模式注册表是一个模式版本控制系统。它存储了一个模式的更改历史,跟踪添加、修改和删除的类型和 字段。为了使用代码生成CLI从模式注册表获取模式,您将需要详细说明 模式下载配置 中的凭据。
GraphQL查询
GraphQL 服务器 的 introspection 允许您查询下层的模式信息。这包括数据如类型、fields、查询、mutations 以及甚至是字段级别的描述。
查看GraphQL规范以获取有关 introspection功能的所有详细信息。
注意:许多生产服务器出于安全考虑禁用了introspection。如果您的introspection查询失败,请检查是否已禁用。