用于将 API 推送到 IBM API Connect 中的 REST 端点

REST 端点对于本地和云 Liberty 用户而言位于中央位置,可以使用此端点对 API 进行可视化、调用以及将其推送到 IBM® API Connect 中。

将已部署的 REST 端点推送到 IBM API Connect 中

要将已部署的 REST 端点推送到 IBM API Connect 中,您必须调用新的 REST 端点 /ibm/api/docs/apiconnect,此端点由 apiDiscovery-1.0 功能部件在服务器配置中公开。管理员和开发者可以使用 REST 端点从 Liberty 实例向任何正在搜索 IBM API Connect 框架目录的企业开发者公开资产。

提供产品定义

所有 API 都由产品引用并从目录中公开。因此,调用者提供产品定义,而 Liberty 使用该产品定义来引用其 RESTful API 并将所生成的产品推送到 IBM API Connect 中。本主题中提供了样本产品。

Liberty 集合体的资产在 IBM API Connect 中公开

通过使用相应的 Liberty 集合体端点 /ibm/api/collective/docs/apiconnect,您可以借助单个 RESTful 触发器将 Liberty 集合体的所有资产在 IBM API Connect 中公开。Liberty 集合体端点可以向任何连接到 API Connect 的云开发者公开成千上万个 API。要获取此端点的完整 Swagger 定义,请参阅 Liberty RESTful API 注册表 /ibm/api/explorer

端点摘要

HTTP 请求方法:POST

URL:https://server:https_port/ibm/api/docs/apiconnect

必需的头

X-APIM-Authorization
用于连接到 API Connect 的凭证以下面两种格式显示:
  • usernamepassword
  • xyz,其中 xyz 是“用户名: 密码”的基本 64 位编码版本。

必需的查询参数

服务器
IBM API Connect 服务器的名称,此名称以 https:// 开头。
Catalog
托管所生成产品的目录的名称。
Organization
调用者所属组织的名称。

可选的查询参数

apiRoot
这是一个多基数参数,用于准确地指定调用者想要推送到 API Connect 中的上下文根(例如 apiRoot=/myApp)。缺省情况下,Liberty 包含所有已部署的应用程序,但已知的 Liberty 运行时 Web 应用程序捆绑软件除外。当您想要对要公开的应用程序进行过滤时,此参数非常有用。
member ID(仅可用于集合体变体)
这是一个多基数参数,用于指定调用者想要从中公开资产的准确集合体成员的标识。此标识由包含主机名、URL 编码的用户目录和服务器名称的字符串组成,所有项都以逗号分隔,例如 myHost.com, %2Ftmp%2Fwlp%2Fusr, server1
Input body
YAML 或 JSON 代码中的产品定义。请参阅以下 YAML 示例:
product: "1.0.0"
  info: 
    name: "pushed-product"
    title: "A Product that encapsulates Liberty APIs"
    version: "1.0.0"
  visibility: 
    view: 
      enabled: true
      type: "public"
      tags: 
        - "string"
      orgs: 
        - "string"
    subscribe: 
      enabled: true
      type: "authenticated"
      tags: 
        - "string"
      orgs: 
        - "string"
  apis: 
    liberty: 
      name: "liberty-api:1.0.0"
      x-ibm-configuration: 
        phase: "realized"
        testable: true
        enforced: true
        cors: 
          enabled: true
        assembly: 
          execute: 
            - 
              invoke: 
                target-url: "${gateway.target}"
                title: "Invocation"
                description: "Invoking back-end service"
  plans: 
    default:
      title: "Default Plan"
      rate-limit: 
        hard-limit: false
        value: "100/hour"
      approval: false
  createdAt: "2016-04-18T20:33:22.937Z"
  createdBy: "string"

用于指示主题类型的图标 参考主题

文件名:rwlp_push_rest_api.html