使用 Azure API 管理从 HTTP 终结点公开无服务器 API

Azure Functions 在门户中与 Azure API 管理集成,允许你将 HTTP 触发器函数终结点公开为 REST API。 这些 API 是使用 OpenAPI 定义描述的。 此 JSON(或 YAML)文件包含 API 中提供的操作的相关信息。 其中包含有关应如何构造 API 的请求和响应数据的详细信息。 通过集成函数应用,你可以让 API 管理生成这些 OpenAPI 定义。

本文介绍了如何将函数应用与 API 管理集成。 此集成适用于以任何受支持的语言开发的函数应用。 还可以从 Azure API 管理导入函数应用

对于 C# 类库函数,还可以使用 Visual Studio 创建和发布与 API 管理集成的无服务器 API。

创建 API 管理实例

若要创建链接到函数应用的 API 管理实例,请执行以下操作:

  1. 选择该函数应用,从左侧菜单中选择“API 管理”,然后在“API 管理”下选择“新建”。

    Choose API Management

  2. 使用下表中指定的“API 管理”设置:

    设置 建议值 说明
    名称 全局唯一名称 根据函数应用的名称生成一个名称。
    订阅 订阅 在其下创建此新资源的订阅。
    资源组 myResourceGroup 与函数应用相同的资源,系统会为你设置。
    位置 服务的位置 请考虑选择与你的函数应用相同的位置。
    组织名称 Contoso 在开发人员门户中使用的组织名称,也用于电子邮件通知。
    管理员电子邮件 你的电子邮件 从 API 管理接收了系统通知的电子邮件。
    定价层 消耗 消耗层并非在所有区域中均可用。 如需完整的定价详细信息,请参阅 API 管理定价页

    Create new API Management service

  3. 选择“导出”以创建 API 管理实例,这可能需要几分钟的时间。

  4. Azure 创建该实例后,它会在页面上启用“启用 Application Insights”选项。 选择该选项可将日志发送到函数应用程序所在的位置。

导入函数

创建 API 管理实例后,你可以导入 HTTP 触发的函数终结点。 此示例导入名为 TurbineRepair 的终结点。

  1. 在“API 管理”页中,选择“链接 API”。

  2. 此时会打开“导入 Azure Functions”,其中突出显示了“TurbineRepair”函数。 选择“选择”,继续操作。

    Import Azure Functions into API Management

  3. 在“从函数应用创建”页中接受默认值,然后选择“创建”。

    Create from Function App

    Azure 会创建用于该函数的 API。

下载 OpenAPI 定义

导入函数后,可以从 API 管理实例下载 OpenAPI 定义。

  1. 选择页面顶部的“下载 OpenAPI 定义”。

    Download OpenAPI definition

  2. 保存下载的 JSON 文件,然后将其打开。 查看定义。

后续步骤

现在,可以在门户上的“API 管理”中优化定义。 还可以详细了解 API 管理