资源
资源GraphQL 客户端

GraphQL 客户端

这是一份关于与 GraphQL 交互的最流行客户端的汇编与概述。

GraphiQL

GraphiQL 是执行 GraphQL queries 的首选 IDE。它与 GraphQL 同期发布,通过将执行 GraphQL 服务器 queries 的客户端与浏览 schema 文档的探索器集于一体,立即展现了 GraphQL 相较于现有 API 所能提供的卓越开发体验。

GraphiQL

GraphiQL 提供的功能包括:

  • 标签页
  • 自定义请求头
  • 语法高亮
  • 字段、参数、类型等的智能输入补全
  • 针对 queries 和变量的实时错误高亮与报告
  • Query 与变量的自动补全
  • 自动向 queries 添加必填字段
  • 支持 Markdown 的文档浏览器与搜索
  • 使用本地存储的 Query 历史记录
  • 主题

graphql.org/swapi-graphql 提供了在线演示。在编辑器中编写 GraphQL query,点击两个面板中央的「Execute Query」按钮,即可查看 query 的响应结果。

Voyager

GraphQL Voyager 是交互式 schema 可视化工具的代表,正如其文档所述,它将「GraphQL 背后的图」呈现出来。

Voyager

它具备以下功能:

  • 在图上快速导航。
  • 左侧面板提供每种类型的详细信息。
  • 「Skip Relay」选项,通过移除 Relay 包装类简化图结构。
  • 可选择任意类型作为图的根节点。

ivangoncharov.github.io/graphql-voyager 提供了在线演示。

DociQL

DociQL 提供一个命令,可从 GraphQL 端点生成精美的静态 HTML5 文档。运行命令后,会生成一个包含 HTML、CSS 和 JS 文件的目录,将这些文件复制到 Web 服务器即可展示 GraphQL schema 的文档。

生成的文档默认采用三栏单页布局,左栏显示所有类型的链接,中间显示描述,右侧显示示例 query:

DociQL

它具备以下功能:

  • 使用 introspection query 获取 GraphQL 的 schema,并即时生成文档。
  • 生成带有「Try it now」链接的示例请求与响应。
  • 允许用户定义用例并按领域分组。
  • 可通过 Handlebars 模板和 SCSS 样式进行配置。
  • 在 API 描述中支持 Markdown。
  • 响应式 HTML5 和 CSS3 布局,适配所有设备和屏幕尺寸。
  • 支持局部文档,可嵌入现有网站。

生成文档的演示可在 wayfair.github.io/dociql 查看。

SpectaQL

SpectaQL 在 DociQL 基础上构建,使其更好地适配 GraphQL。它提供一个只展示 GraphQL 相关信息的主题,去除来自 Swagger/OpenAPI 领域的内容(例如,它会省略 query 示例中显示的「Response Content-Types: application/json」和「Response Example (200 OK)」消息)。

SpectaQL

SpectaQL 还支持通过多种方式输入 GraphQL schema 来源:

  • 通过 introspection query 从在线端点获取。
  • 从包含 introspection query 结果的文件获取。
  • 从包含 SDL schema 定义的文件、多个文件或 glob 获取。

生成文档的演示可在 useanvil.com/docs/api/graphql/reference 查看。

Postman

Postman 是用于构建和使用 API 的 API 平台。虽然并非专为 GraphQL 构建,但 Postman 可用于执行 GraphQL queries,并简化创建 GraphQL API 时的协作流程。

Postman

Postman 包含有助于加速 API 生命周期的工具,涵盖 API 的设计、测试、文档编写和模拟。我们还可以通过工作区来组织 API,与分布在世界各地的团队成员协同工作。

Altair

Altair 是另一款 GraphQL Client IDE,类似于 Postman,但专为 GraphQL 设计。

Altair

除了任何 GraphQL Client IDE 所提供的功能外,Altair 还提供环境支持(可在本地、预发布和生产环境的 API 之间切换)以及 query 集合(便于与团队成员轻松共享)。