你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

导入 GraphQL API

适用于:所有 API 管理层级

在 API 管理 中,可以在以下两个模型之一中添加 GraphQL API:直通到现有 GraphQL 终结点,或导入 GraphQL 架构并使用自定义字段解析程序创建合成 GraphQL API。 有关详细信息,请参阅 GraphQL 概述

在本文中,你将:

  • 将直通 GraphQL API 添加到 API 管理实例。
  • 测试 GraphQL API。

如果要导入 GraphQL 架构并设置使用 REST 或 SOAP API 终结点的字段解析程序,请参阅 导入 GraphQL 架构并设置字段解析程序

Prerequisites

添加 GraphQL API

  1. Azure 门户中,转到 API 管理实例。

  2. 在左窗格中,选择 API>API

  3. 选择 “添加 API”。

  4. “定义新 API”下,选择 GraphQL 磁贴。

    选择 GraphQL 磁贴的屏幕截图。

  5. 在生成的对话框中,选择“ 完整”,然后在必填字段中输入值,如下表所述。

    “从 GraphQL 架构创建”页的屏幕截图。

    价值 说明
    显示名称 GraphQL API 的显示名称。
    名称 GraphQL API 的原始名称。 键入显示名称时自动填充。
    GraphQL 类型 选择要从现有 GraphQL API 终结点导入的直通 GraphQL
    GraphQL API 终结点 带有 GraphQL API 终结点名称的基 URL。
    例如: https://example.com/your-GraphQL-name。 还可以使用 SWAPI GraphQL 的常见终结点,例如 https://swapi-graphql.azure-api.net/graphql,以进行演示。
    上传架构 (可选)选择上传架构文件以替换从 GraphQL 终结点检索到的架构(如果有)。
    说明 添加 API 的说明。
    URL 方案 根据 GraphQL 端点选择一个方案。 如果 GraphQL API 包含订阅类型,请选择其中一个包含 WebSocket 方案(WSWSS)的选项。 默认选择为 HTTP(S)。
    API URL 后缀 添加 URL 后缀以标识 API 管理实例中的特定 API。 它必须在 API 管理实例中是唯一的。
    基 URL 字段不可编辑,显示您的 API 基础 URL。
    标记 (可选)将 GraphQL API 与新的或现有的标记相关联。
    产品 将 GraphQL API 与产品关联来发布它。
    对此 API 进行版本控制? 选中复选框,将版本控制方案应用到 GraphQL API。
  6. 选择“创建”

  7. 创建 API 后,查看或修改 “架构 ”选项卡上 的架构。门户中 GraphQL 架构的屏幕截图。

测试 GraphQL API

  1. 转到 API 管理实例。

  2. 在左窗格中的 “API ”部分,选择 API

  3. 在“所有 API”下,选择 GraphQL API。

  4. 选择“测试”选项卡以访问“测试”控制台。

  5. 在“标头”下:

    1. “名称” 菜单中选择标题。
    2. “值 ”框中输入值。
    3. 通过选择 “添加标头”添加更多标头
    4. 使用回收站按钮删除标头。
  6. 如果已将产品添加到 GraphQL API,请在 “应用产品范围”下添加产品范围。

  7. 查询编辑器中,执行下列作之一:

    1. 从菜单左侧的列表中选择至少一个字段或子字段。 选择的字段和子字段将显示在查询编辑器中。

    2. 开始在查询编辑器中键入内容来撰写查询。

      查询编辑器的屏幕截图。

  8. 在“查询变量”下,添加变量来重用相同的查询或变更,并传递不同的值。

  9. 选择“发送”。

  10. 查看响应。

    测试查询响应的屏幕截图。

  11. 重复上述步骤以测试不同的有效负载。

  12. 完成测试后,退出测试控制台。

测试订阅

如果 GraphQL API 支持订阅,则可以在测试控制台中对其进行测试。

  1. 确保 API 允许适用于你的 API 的 WebSocket URL 方案(WS 或 WSS)。 可以在“设置”选项卡上启用此设置

  2. 在查询编辑器中设置订阅查询,然后选择“连接”以便与后端服务建立 WebSocket 连接

    查询编辑器中订阅查询的屏幕截图。

  3. 在“订阅”窗格中查看连接详细信息

    门户中 Websocket 连接的屏幕截图。

  4. 订阅的事件会在“订阅”窗格中。 在断开 WebSocket 连接或连接到新的 WebSocket 订阅之前,将一直保持 WebSocket 连接。

    门户中 GraphQL 订阅事件的屏幕截图。

保护 GraphQL API

同时应用现有的身份验证和授权策略GraphQL 验证策略来保护 GraphQL API,以防范特定于 GraphQL 的攻击。