使用 RESTRequest 节点调用 REST API

IBM® App Connect Enterprise 提供了 RESTRequest 节点,可用于与外部 REST API 进行交互。

关于此任务

您可以在消息流中使用 RESTRequest 节点向外部 REST API 发出同步请求。 RESTRequest 节点使用导入的 Swagger 文档或导入的 JSON 或 YAML 格式的 OpenAPI 3.0 文档。 您可以从工具箱工作空间、文件系统或 URL 导入文档。

以下视频演示了如何使用 IBM App Connect Enterprise 调用 REST API:使用 App Connect Enterprise 12.0 调用 REST API。

如果在 IBM App Connect Enterprise Toolkit中从头开始创建 REST API ,那么已创建 Swagger 文档或 OpenAPI 3.0 文档。 您可以导入文档并将其与 RESTRequest 节点配合使用。

有关创建 REST API 的更多信息,请参阅 创建 REST API。 有关使用 RESTRequest 节点的更多信息,请参阅 RESTRequest 节点

过程

导入 Swagger 文档或 OpenAPI 3.0 文档,并通过完成以下步骤来配置 RESTRequest 节点:

  1. 创建消息流以包含 RESTRequest 节点。
    有关创建消息流的更多信息,请参阅 创建消息流
  2. 填充 REST API 目录

    "应用程序开发" 视图中的每个项目都有一个 REST API 目录 文件夹,其中包含该项目中可用于 RESTRequestRESTAsyncRequest 节点的所有 REST API 的列表。 REST API 目录中的每个 REST API 文件夹都包含 REST API 中的所有可用操作的列表。 通过完成以下步骤来填充 REST API 目录

    1. 右键单击 "应用程序开发" 视图中的项目或应用程序,然后选择 导入。 或者,选择 文件 > 导入
    2. 选择 RESTAPIs > RestAPI 定义 以打开 " 导入 RESTAPI 定义 " 对话框。
    3. 项目 菜单中选择项目,或者单击 新建 以创建新项目。
    4. 选择 从工作区或文件系统中选择 OpenAPI 文档 OpenAPI URL 使用 HTTP 或 HTTPS
    5. 单击 下一步 以打开 " 导入 RESTAPI 定义 " 对话框。
    6. 根据您在步骤 d 中的选择,系统会提示您从文件系统或工作区中的项目中选择文件,或指定 URL。
    7. 单击 下一步 以查看要导入的 RESTAPI 的详细信息。
    8. 如果 RESTAPI 的详细信息正确,请单击 下一步
    Swagger 文档或 OpenAPI 3.0 文档将复制到包含 RESTRequest 节点的项目的 REST API 目录其他资源 文件夹中,并在 "应用程序开发" 视图中显示。
  3. 配置 RESTRequest 节点以使用导入的 Swagger 文档或包含要调用的操作的导入的 OpenAPI 3.0 文档,方法如下所示:
    • 将操作从 REST API 目录拖到消息流画布上,或者拖到消息流中两个现有节点之间的连接上。 将自动创建 RESTRequest 节点并将其配置为使用所选操作。 如果将该操作放到两个现有节点之间的连接上,那么会将 RESTRequest 插入到两个现有节点之间的流中,并配置为使用所选操作。
    • RESTRequest 节点从选用板拖到消息流画布上,或拖到消息流中两个现有节点之间的连接上。 如果将 RESTRequest 节点拖到画布上,那么将打开配置向导。 如果将 RESTRequest 节点从选用板拖到消息流中两个现有节点之间的连接上,那么 RESTRequest 节点将插入到两个现有节点之间的流中,并且配置向导将打开。

      然后,您必须使用配置向导以选择 REST API 和要调用的操作。 您可以从导入的 Swagger 文档或导入的 OpenAPI 3.0 文档中的操作集中选择操作。 您还可以通过使用 XPath 或 ESQL 表达式,从输入消息树中选择数据,将参数值指定为节点属性。

      1. 使用向导中的 在 REST API 中调用操作 页面来指定包含要使用的操作的 Swagger 文档或 OpenAPI 3.0 文档的位置:
        • 从所引用的项目或文件系统中选择 Swagger 文档或 OpenAPI 3.0 文档

          选择此选项以显示一个窗口,您可以在该窗口中指定文件系统中的位置,也可以从引用的项目中选择 Swagger 文档或 OpenAPI 3.0 文档。 如果从文件系统中选择 Swagger 文档或 OpenAPI 3.0 文档,那么会将其复制到包含 RESTRequest 节点的项目中。

          如果要使用 Swagger 文档或未引用的共享库中的 OpenAPI 3.0 文档,那么必须引用该共享库,然后添加 RESTRequest 节点。

        • 使用 HTTP 或 HTTPS 从 URL 检索 Swagger 文档或 OpenAPI 3.0 文档

          选择该选项可显示一个窗口,您可以在其中指定指向 Swagger 文档或 OpenAPI 3.0 文档的 URL。 该 Swagger 文档或 OpenAPI 3.0 文档将被下载并存储在包含 RESTRequest 节点的项目中。

        • 手动配置 REST 请求节点

          选择此选项以关闭向导而不更改 RESTRequest 节点。 然后,可以选择将操作从 "导航" 中的 REST API 目录 拖到消息流中的 RESTRequest 节点上,并自动将其配置为使用该操作。

      2. 如果您在上一步中选择了从所引用的项目或文件系统中选择 Swagger 文档或 OpenAPI 3.0 文档使用 HTTP 或 HTTPS 从 URL 检索 Swagger 文档或 OpenAPI 3.0 文档,那么会显示一个窗口,可从中选择要在 REST API 中调用的操作。 选择所需操作,然后单击完成RESTRequest 节点会自动配置为使用所选操作。
  4. 配置 RESTRequest 节点的其余属性。
    有关更多信息,请参阅 RESTRequest 节点
  5. 使用 mqsicrecredentials 命令配置用于与 REST API 交互的安全凭证。 或者,可以使用 mqsisetdbparms 命令 命令。
    有关更多信息,请参阅 配置安全凭证以连接到 REST API