将 SOAP API 导入 API Management

适用于:所有 API 管理层级

本文介绍如何导入 WSDL 规范(SOAP API 的标准 XML 表示形式)。 本文还介绍如何在 API Management 中测试 API。

在本文中,学习如何:

  • 导入 SOAP API
  • 在 Azure 门户中测试 API

注意

WSDL 导入 API Management 受到某些限制的约束。 不支持带有 wsdl:importxsd:importxsd:include 指令的 WSDL 文件。 如需用于解析和合并 WSDL 文件中的这些依赖项的开放源代码工具,请参阅 GitHub 存储库

先决条件

导入后端 API

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

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

  3. 在“根据定义创建”下,选择“WSDL”。

    SOAP API

  4. 在“WSDL 规范”中,输入 SOAP API 的 URL,或单击“选择文件”以选择本地 WSDL 文件。

  5. 在“导入方法”中,默认情况下会选择“SOAP 直通”。 选择此选项后,API 将公开为 SOAP,API 使用者必须使用 SOAP 规则。 若要“REST 化”API,请按照导入 SOAP API 并将其转换为 REST 中的步骤进行操作。

    从 WSDL 规范创建 SOAP API

  6. 以下 API 设置会基于 SOAP API 的信息进行自动填充:显示名称、名称、说明。 操作会自动填充“显示名称”、“URL”和“说明”,并接收系统生成的“名称”

  7. 输入其他 API 设置。 可以在创建过程中设置这些值,也可以稍后转到“设置”选项卡来配置这些值。

    有关 API 设置的更多信息,请参阅导入和发布你的第一个 API 教程。

  8. 选择“创建”。

在门户中测试新的 API

可直接从管理门户调用操作,这为管理员查看和测试 API 的操作提供了一种方便的方式。

  1. 选择上一步中创建的 API。

  2. 选择“测试”选项卡。

  3. 选择操作。 该页将显示查询参数的字段和标头的字段。

    注意

    在测试控制台中,API 管理自动填充 Ocp-Apim-Subscription-Key 标头,并配置内置全访问订阅的订阅密钥。 此密钥允许访问 API 管理实例中的每个 API。 可选择性地通过选择 HTTP 请求旁的“眼睛”图标来显示 Ocp-Apim-Subscription-Key 标头。

  4. 根据操作,输入查询参数值、标头值或请求正文。 选择“发送”。

    当测试成功时,后端会使用成功的 HTTP 响应代码和某些数据进行响应。

    提示

    默认情况下,测试控制台会将请求发送到 API 管理的 CORS 代理,该代理将请求转发到 API 管理实例,后者又将请求转发到后端。 此代理使用公共 IP 地址 13.91.254.72,并且只能访问公共终结点。 如果要将请求直接从浏览器发送到API 管理服务,请选择“绕过 CORS 代理”。 如果要使用测试控制台,并且 API 管理网关与网络隔离或不允许来自 CORS 代理的流量,请使用此选项。

若要调试 API,请参阅教程:使用请求跟踪调试 API

通配符 SOAP 操作

如果需要传递 API 中未定义专用操作的 SOAP 请求,可以配置通配符 SOAP 操作。 通配符操作将匹配 API 中未定义的任何 SOAP 请求。

定义通配符 SOAP 操作:

  1. 在门户中,选择上一步创建的 API。
  2. 在“设计”选项卡中,选择“+ 添加操作”。
  3. 输入该操作的显示名称。
  4. 在 URL 中,选择 POST,并在资源中输入 /?soapAction={any}。 花括号内为任意模板参数,不会影响到执行。

追加其他 API

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

  • OpenAPI 规范
  • SOAP API
  • Azure 应用服务中托管的 Web 应用
  • Azure 函数应用
  • Azure 逻辑应用
  • Azure Service Fabric

按照以下步骤将其他 API 追加到现有 API。

注意

导入另一个 API 时,操作将追加到当前 API 后面。

  1. 在 Azure 门户中转到自己的 Azure API 管理实例。

    转到 Azure API 管理实例

  2. 在概述页面上或左侧的菜单上选择“API” 。

    选择“API”

  3. 单击要将另一个 API 追加到的 API 旁边的“...”

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

    选择“导入”

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

    选择服务

后续步骤