许多客户端可能需要帮助理解 GraphQL 的语义并探索 Cloudflare GraphQL API 的功能。
本页详细介绍如何使用 GraphiQL 客户端 ↗ 编写并执行 GraphQL 查询。
有关如何配置客户端的所有详情,请参阅相关文档。
点击 GraphiQL 的编辑面板,添加以下基础查询,将 zone-id 替换为您的 Cloudflare zone ID:
为辅助查询构建,GraphiQL 客户端提供单词补全功能。将光标插入查询中(此例为 zones 下方一行),然后开始输入值以启用该功能。例如,输入 firewall 时,弹出菜单会显示返回防火墙信息的数据集:
列表底部的文本显示该节点返回数据的简短描述。
选择要查询的数据集并插入。可以在列表中选择项目,或使用方向键滚动并按 Return 键。
将鼠标悬停在字段上可显示描述该数据集的工具提示。在此示例中,将鼠标悬停在 firewallEventsAdaptive 节点上会显示以下描述:
要显示有关数据集的信息(包括必填参数),请选择数据集名称(蓝色文本)。Documentation Explorer 会打开并显示数据集详情:
请注意,filter 和 limit 参数是必填的,如其类型定义(金色文本)后的感叹号(!)所示。在此示例中,orderBy 参数不是必填的,但使用时需要 ZoneFirewallEventsAdaptiveOrderBy 类型的值。
要浏览支持的筛选字段列表,请在 Documentation Explorer 中选择筛选类型定义(金色文本)。在此示例中,类型为 ZoneFirewallEventsAdaptiveFilter_InputObject:
此示例查询显示 firewallEventsAdaptive 所需的 filter 和 limit 参数(以及 GraphQL 其余节点):
要浏览查询可使用的字段,请将光标悬停在查询中的数据集名称上,在显示的工具提示中选择数据类型定义(金色文本):
Documentation Explorer 会打开并显示字段列表:
要添加要读取的数据字段,在参数右括号后输入左花括号({),然后开始输入要获取的字段名称。使用单词补全选择字段。
此示例查询返回 action、datetime、clientRequestHTTPHost 和 userAgent 字段:
输入要查询的所有字段后,选择 Play(运行) 按钮提交查询。响应面板会包含从配置的 GraphQL API 端点获取的数据:
GraphiQL 客户端允许您使用占位符表示值,并通过 payload 的 variables 部分提供这些值。
占位符名称应以 $ 字符开头,在查询中使用时无需用引号包裹。
占位符的值应以 JSON 格式提供,其中占位符地址不带 $ 字符。例如,对于占位符 $zoneTag,GraphQL API 会从所提供 variables 对象的 zoneTag 字段读取值。
要为占位符提供值,请选择 Query Variables(查询变量) 面板并编辑定义变量的 JSON 对象。
此示例查询使用 zoneTag 查询变量表示 zone ID:
