图探索
探索和可视化您的图类型、字段和关系
当您的图图增长时,理解其结构可能会变得更困难。如果不了解模式(尤其是子图如何相互关联)的复杂性,开发可能会受阻或走向错误的方向。
GraphOS Studio功能
GraphOS Studio提供了多种理解和探索您组织图中图的方式,包括:
- 一个可编辑的README页面,描述图的新手入门信息
- 模式页面,包含三个独特视图,包括模式可视化
- 资源管理器,帮助您针对图构建新的操作
- 变更日志,显示所有已发布变更
ⓘ 注意
这些GraphOS Studio功能适用于所有图的类型。对于特定于超级图的功能,请参阅超级图专用Studio功能。请参阅变体页面以获取Studio页面的完整列表。
查看图页面
在GraphOS Studio中选择了组织后,点击特定的图变体以查看其页面。
页面权限
使用 无服务器 和 专用计划,所有 Studio 组织成员都可以访问所有页面,包括 设置 组织内所有 图形 的 成员角色 企业账户可以设置 成员角色 以配置组织中个别成员的细粒度访问。
README 页面
当用户在 GraphOS Studio 中打开您的其中一个 graph 的 变体 时,其 README 页出现:
类似于 Git 仓库的典型主页,此页面显示可以编辑任何内容的基于 Markdown 的 README。
ⓘ 注意
只有具有 组织管理员,图形管理员,捐献者 或 文档员 角色子 可以编辑变体的 README。如果一个变体 受保护,则 捐献者 无法编辑其 README。
每个 variant 都有自己的 README。如果您编辑一个变体的 README,那些编辑不会应用到其他变体。除其他用途外,这允许您在不同 公开变体 中向外部消费者提供不同的信息。
支持的 Markdown
README 支持所有 基本 Markdown 语法 和大多数 扩展语法,包括表格、代码块和脚注。
您可以使用以下语法定义一个 GraphQL 代码块:
```graphqlquery MyQuery {users {idname}}```
这将在代码块中呈现具有复制操作或打开它在 探索者 中的按钮。
README 短代码
README 支持 一组短代码。这些短代码可以 根据你的 variant 自动填充 README 的数据,例如 graph's 名称和 variant 的 graph ref:
# Overview of {{ graph.name }}Graph ref: {{ graph.ref }}
要查看所有支持的短代码,请点击 README 编辑器的左下角的 Graph shortcodes。
模式页面
graph 变量的 Schema 页面 有三种不同的视图:
- 在 Reference 选项卡中,您可以 过滤 您模式 的类型和 field 定义。
- 在 SDL 选项卡中显示 您模式 的原始 SDL
- 在 Visualization 选项卡中,提供了一个 过滤、导航性 graphular 的 模式呈现
模式参考
模式页面 上的 Reference 选项卡 列出了 您模式中 不同类型的定义,例如对象、scalars、接口等。
选择一种定义类型,查看所有相关类型的表格
表格中的每个类型定义 包括
- 类型的名称
- 您可以 点击 名称 查看类型的 更多详细信息,如下 fields 对象的字段,或联合的可能类型。
- 类型的描述,如果您的模式包含描述的话
- 哪些 subgraphs 定义了 类型,如果您有一个 联邦 supergraph
- 具有 Consumer 角色的 用户 无法查看 subgraph 详细信息。
过滤您的模式
在 Schema 页面的顶部 提供了一个 Filter Schema 框,您可以使用它 来找到与一组过滤器 匹配的类型和 fields:
💡 提示
- 点击 过滤器框左侧 的箭头按钮 来 显示/隐藏 过滤器选择 下拉菜单。
- 点击 过滤器框右侧 的按钮 来 复制 您当前激活的过滤器 设置的可分享 URL。
- 您还可以 直接 复制 浏览器的地址栏。
您设置的任何过滤器 都会在 您在 模式页面 之间 移动时 保持 激活状态。
您可以根据 类型/field 名称 过滤 模式定义,如上所示,以及 以下组合中的任何组合:
过滤 | 描述 | 示例 |
---|---|---|
| 包括 任何指定 subgraphs 中定义的结果。 仅适用于 联邦 supergraphs。 |
|
| 如果你的 图表 使用了 如果你的 图表 没有使用 |
|
| 包括应用了任何指定指令的结果。如果正在查看对象表,还包括至少有一个具有指定指令的字段的对象。 |
|
| 包括具有任何指定返回类型的结果。如果正在查看对象表,包括至少有一个具有指定返回类型的字段的对象。 此过滤器包括所有返回特定类型的字段,无论每个字段的nullability或它是否返回列表。例如,如果您指定 |
|
| 包括使用任何指定名称的 GraphQL 参数 的结果。如果正在查看对象表,也包括至少有一个具有指定参数的字段的对象。 |
|
过滤规则
- 在单个过滤器中列出多个可能值时,这些值使用 或 逻辑。
- 例如,如果通过
subgraph:products,reviews
过滤,则结果包括每个 子图 中的定义。
- 例如,如果通过
- 如果您应用了多种类型的过滤器,则这些过滤器使用 与 逻辑。
- 例如,如果通过
subgraph:products
和returnType:Int
过滤,则结果只包括满足这两个条件的定义。
- 例如,如果通过
- 目前,无法对同一类型的多个过滤器使用 与 逻辑。
- 例如,无法通过
subgraph:products
与 与 subgraph:reviews 包含只在两个子图中都存在的定义。
- 例如,无法通过
模式定义语言
SDL 标签显示与您的图关联每个图方案的原始 模式定义语言 (SDL)。对于一个 单卷本,这仅仅是图的 API 方案。超级图还包括一个 超级图方案 和多个 子图方案。有关更多信息,请参阅 查看子图 SDL。
无论您查看的 SDL 类型如何,您都可以从此标签复制 SDL 或以 纯文本文档 或 JSON 格式 下载 SDL。
模式可视化
可视化标签提供了一个图表示您的模式结构,包括类型、字段和关系。这有助于明确您对模式设计的理解,从而使您可以更容易地确定潜在的問題并改进您的数据模型。
资源浏览器
GraphOS Studio提供了强大的资源浏览器IDE,它可以帮助您可视化图并对其运行查询。它可通过在Studio中的图的 资源浏览器 页面访问。有关更多信息,请参阅 资源浏览器文档。
跟踪模式变更
Studio中的 变更日志 页面显示了您对你的图结构所做的更改时间线。只有您发布到Studio的模式更改才包含在此时间线中,这是在持续集成交付管道中 包含方案发布 的重要原因之一。