你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用于:所有 API 管理层级
本文介绍如何使用 Azure 门户将 Azure Web 应用作为 API 导入 Azure API 管理并测试导入的 API。
注意
目前无法在工作区中使用此功能。
在本文中,学习如何:
- 以 API 的形式导入托管在 Azure 应用服务中的 Web 应用
- 在 Azure 门户中测试 API
使用 API 管理公开 Web 应用
Azure 应用服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端。 API 开发人员可以使用其首选的技术堆栈和管道来开发 API 并将其 API 后端发布为安全、可缩放的环境中的 Web 应用。 然后,他们可以使用 API 管理来公开 Web 应用,在整个生命周期中管理和保护 API,并将其发布到使用者。
使用 API 管理公开 Web 应用托管的 API 具有以下优势:
- 将向 API 使用者公开的前端的保护和管理与后端 Web 应用的管理和监控分离。
- 在与其他 API 相同的环境中,管理那些作为 Web 应用托管的 Web API。
- 应用 策略 以更改 API 行为,例如调用速率限制。
- 将 API 使用者定向到可自定义的 API 管理 开发人员门户 ,以便他们可以发现并了解 API、请求访问权限和试用 API。
有关详细信息,请查看关于 API 管理。
OpenAPI 定义与通配符操作
API 管理支持导入应用服务中托管的 Web 应用,其中包括 OpenAPI 定义(Swagger 定义)。 不过,OpenAPI 定义不是必需的。
如果 Web 应用配置了 OpenAPI 定义,API 管理将检测到这一点。 或者,也可以将定义手动导入 API 管理。 然后,API 管理会创建直接映射到该定义的 API 操作,包括所需路径、参数和响应类型。
建议使用 OpenAPI 定义,因为 API 会以高精确度导入到 API 管理,从而灵活地验证、保护、管理和更新每个操作的配置。
如果未提供 OpenAPI 定义,API 管理会为常见的 HTTP 谓词(GET 和 PUT 等)生成通配符操作。 将所需路径或参数追加到通配符操作可将 API 请求传递到后端 API。
通过通配符操作,你仍可利用相同的 API 管理功能,但默认情况下,定义操作的详细信息级别不同。 在这两种情况下,你都可编辑操作或将操作添加到导入的 API。
示例
后端网页应用可能支持两个 GET 操作。
https://<app-service>.azurewebsites.net/customer/{id}
https://<app-service>.azurewebsites.net/customers
将 Web 应用导入 API 管理服务,路径如下 https://<api>.azureapi.net/store
。 下表显示了导入到 API 管理中的操作,这些操作可以带有或不带有 OpenAPI 规范。
类型 | 导入的操作 | 示例请求 |
---|---|---|
OpenAPI 规范 | GET /customer/{id} GET /customers |
GET https://<api>.azureapi.net/store/customer/1 GET https://<api>.azureapi.net/store/customers |
通配符 | GET /* |
GET https://<api>.azureapi.net/store/customer/1 GET https://<api>.azureapi.net/store/customers |
通过通配符操作,可对后端服务发出与 OpenAPI 规范中的操作相同的请求。 不过,OpenAPI 指定的操作可在 API 管理中单独管理。
先决条件
完成快速入门 :创建 Azure API 管理实例。
请确保订阅中有一个应用服务。 有关详细信息,请查看应用服务文档。
有关创建示例 Web API 并将其发布为 Azure Web 应用的信息,请参阅:
导入和发布后端 API
提示
在以下步骤中,在 Azure 门户中使用 API 管理启动导入。 还可以通过在应用的 API 菜单中选择 API 管理 ,直接从 Web 应用链接到 API 管理。
在 Azure 门户导航到 API 管理服务。
在左侧菜单中的 “API”部分,选择 API,然后选择“ + 添加 API”。
选择 “应用服务 ”磁贴:
选择 “浏览” 以查看订阅中的应用服务列表。
选择应用服务,然后单击 “选择 ”按钮。 如果 OpenAPI 定义与所选 Web 应用相关联,API 管理会提取它并导入它。
如果未找到 OpenAPI 定义,API 管理会为常见的 HTTP 谓词生成通配符操作来公开 API。
添加 API URL 后缀。 后缀是标识 API 管理实例中的 API 的名称。 它必须在 API 管理实例中是唯一的。
如果希望发布 API 并可供开发人员使用,请切换到 “完整 ”视图并将 API 与 产品相关联。 此示例使用 无限制 产品。 (可以在创建时或稍后通过“设置”选项卡将你的 API 添加到产品中。)
注意
产品是通过开发人员门户向开发人员提供的一个或多个 API 的关联。 首先,开发人员必须订阅产品才能访问 API。 订阅后,他们获取产品中任何 API 的订阅密钥。 作为 API 管理实例的创建者,你是管理员,默认情况下订阅每个产品。
在某些层中,每个 API 管理实例附带两个默认示例产品:
- 入门
- 不受限制
输入其他 API 设置。 可以在创建 API 时设置这些值,也可以稍后转到 “设置” 选项卡对其进行配置。导入 和发布第一个 API 教程中介绍了这些设置。
在 Azure 门户中测试新的 API
可直接从 Azure 门户调用操作。 此方法提供了一种查看和测试 API 操作的便捷方法。 还可以在 开发人员门户中 或使用自己的 REST 客户端工具测试 API。
选择上一步中创建的 API。
在“测试”选项卡上,选择一个操作。
该页将显示查询参数的字段和标头的字段。 其中一个标头是
Ocp-Apim-Subscription-Key
。 此标头适用于与 API 关联的产品的订阅密钥。 如果创建了 API 管理实例,则已是管理员,因此会自动填充密钥。按“发送”。
如果测试成功,后端会响应并显示“200 正常”和一些数据。
在 Azure 门户中测试通配符操作
生成通配符操作后,操作可能不会直接映射到后端 API。 例如,导入 API 管理中的通配符 GET 操作默认使用路径 /
。 但是,后端 API 可能支持在路径/api/todoItems
进行GET操作。
若要测试路径 /api/todoItems
,请执行以下操作:
选择您创建的那个 API,然后选择一个操作。
在 “测试 ”选项卡上的 “模板参数”下,更新通配符 \ 名称旁边的值。 例如,输入 api/todoItems。 此值会追加到通配符操作的路径
/
。选择Send。
追加其他 API
可以通过不同服务公开的 API 撰写 API,包括:
- OpenAPI 规范
- SOAP API
- GraphQL API
- Azure 应用服务中托管的 Web 应用
- Azure Functions(Azure 功能服务)
- Azure 逻辑应用
- Azure Service Fabric
注意
导入一个 API 时,操作会追加到当前 API。
将 API 追加到现有 API:
在 Azure 门户中转到你的 Azure API 管理实例:
在“概述”页上选择“API”,或在左侧菜单中选择“API”“API”>。
选择要将另一个 API 追加到的 API 旁边的省略号 (...)。
从下拉菜单中选择“导入”:
选择要从中导入 API 的服务。