导入 gRPC API

适用于:开发人员 | 高级

本文介绍如何在 API 管理中将 gRPC 服务定义导入为 API。 然后,可以在 API 管理中管理 API,保护访问并应用其他策略,并通过网关将 gRPC API 请求传递到 gRPC 后端。

若要将 gRPC API 添加到 API 管理,需要:

  • 将 API 的 Protobuf(协议缓冲区)定义文件上传到 API 管理
  • 指定 gRPC 服务的位置
  • 在 API 管理中配置 API

API 管理支持使用以下类型的 gRPC 服务方法进行直通:一元、服务器流式处理、客户端流式处理和双向流式处理。 有关 gRPC 的背景信息,请参阅 gRPC 简介

注意

  • 目前,gRPC API 仅在自承载网关中受支持,而不是 API 管理实例的托管网关。
  • 目前不支持在 Azure 门户的测试控制台或 API 管理开发人员门户中测试 gRPC API。
  • 导入限制为单个 Protobuff (.proto) 文件。

先决条件

添加 gRPC API

  1. Azure 门户,导航到 API 管理实例。

  2. 在左侧菜单中,选择“API”“+ 添加 API”。>

  3. 在“定义新的 API”下,选择“gRPC”

    显示在门户中创建 gRPC API 的屏幕截图。

  4. 在“创建 gRPC API”窗口中,选择“完整”

  5. 对于 gRPC API,必须指定以下设置:

    1. 在“上传架构”中,选择与要导入的 API 关联的本地 .proto 文件

    2. 在“gRPC 服务器 URL”中,输入 gRPC 服务的地址。 必须可通过 HTTPS 访问该地址。

    3. 在“网关”中,选择要用于公开 API 的网关资源

      重要说明

      在公共预览版中,只能选择自承载网关。 不支持托管网关。

  6. 输入其余设置以配置 API。 在“导入和发布第一个 API”教程中对这些设置进行了说明。

  7. 选择“创建”

    API 将添加到 API 列表中。 可以转到 API 的“设置”选项卡来查看更新设置

使用 .NET 调用 gRPC 服务

有关使用 .NET 调用 gRPC 服务的信息,请参阅以下文章:

追加其他 API

可以通过不同服务公开的 API 撰写 API,包括:

  • OpenAPI 规范
  • SOAP API
  • GraphQL API
  • Azure 应用服务中托管的 Web 应用
  • Azure Functions(Azure 功能服务)
  • Azure 逻辑应用
  • Azure Service Fabric

注意

导入一个 API 时,操作会追加到当前 API。

将 API 追加到现有 API:

  1. 在 Azure 门户中转到你的 Azure API 管理实例:

    显示“API 管理服务”页的屏幕截图。

  2. 在“概述”页上选择“API”,或在左侧菜单中选择“API”“API”>

    显示概述页面上的 API 选择的屏幕截图。

  3. 选择要将另一个 API 追加到的 API 旁边的省略号 (...)。

  4. 从下拉菜单中选择“导入”:

    显示“导入”命令的屏幕截图。

  5. 选择要从中导入 API 的服务。