API Management
API 管理简介
API 管理提供了在 APIM 系统内创建、配置、测试、部署和监控 API 的功能。它作为一个集中式接口,使用户能够高效地管理 API。
主要功能
API Creation & Initial Configuration: 用户可以创建具有所需配置的新 API。
API Post-Creation Configuration:- API Policies Applying: 用户可以应用身份验证、安全性和流量控制的策略。
- Canary Config: 允许对 API 版本进行受控发布。
- API Documentation: 可以获取和编辑 Swagger 文档。
- API Testing: 在部署之前,可以使用请求方法、头部和参数测试 API。
- API Deployment: 用户可以发布 API,使其可供外部访问。点击此按钮后,API 将在网关上部署。
- API Modification and Deletion: 提供 API 更新和删除以管理 API 生命周期。
访问 API 管理
用户可以从侧边菜单导航到 API Management。

此屏幕提供所有 API 的概述,并提供过滤、搜索和管理 API 的选项。

API 管理屏幕的功能
Project Selection: 选择一个项目以查看其 API。APIM 根管理员可以查看所有项目。或者,获得特定项目的项目管理员 (apim-pjt-admin) 权限的用户只能查看他们所属的项目。
API Data Table: 显示项目中所有 API 的列表。支持分页。

Search Bar: 允许使用关键字搜索 API。
Create API Button: 访问 API 创建界面。
API and Gateway Tag Filter: 根据网关标签或 API 标签过滤 API。

API 创建与初始配置
用户可以通过点击 CREATE AN API 在 API 管理屏幕上创建新的 API。
步骤:
- Select Project: 从下拉列表中选择一个项目。
- Configure API Details: 请参阅下面的 API 初始配置详情。
- Save API: 点击 API STORAGE 完成创建或 CANCELLATION 取消操作。
API 初始配置详情
| Field Name | Purpose | Input Notes | Mandatory |
|---|---|---|---|
| API 名称 | 唯一的 API 标识符。 | 英文字母、数字、空格、下划线 ‘_’ 或双冒号 ‘:’。 | 是 |
| API 描述 | 关于 API 的附加细节。 | 简短描述。 | 否 |
| API 标签 | 用于过滤/搜索 API。 | 用 Enter 分隔标签 | 否 |
| API 类型 | 定义 API 的通信类型,以及 API 如何连接到后端。 | 从以下选项中选择:HTTP、WebSocket、AWS Lambda。有关 API 类型的详细说明,请参阅设置。 | 是 |
| 协议 | 指定 API 的安全协议。 | 在 HTTP 或 HTTPS 之间选择。如果选择 HTTPS,则需要 SSL 证书。 | 是 |
| HTTP 方法 | 确定允许的请求方法。 | 从以下选项中选择:GET、POST、PUT、DELETE、HEAD、PATCH、OPTIONS、TRACE、CONNECT。可以选择多个方法。 | 是 |
| 网关 | 指定访问 API 的网关。 | 选择一个现有的网关。API 必须附加到一个网关。 | 是 |
| 网关 URL | API 的公共 URL。 | 根据所选网关自动设置,无法手动编辑,基于网关 URL。有关更多详细信息,请参阅用户指南/APIM 控制台/网关管理。 | 是 |
| 网关 URL 基路径 | 定义客户端请求的 API 路径。 | 输入路径(例如,/order)。与网关 URL 结合形成完整的 API URL。 | 否 |
| 基路径 | 设置在将请求转发到后端之前将被剥离的路径。 | 输入类似 /service 的值。与剥离路径切换一起使用。 | 是 |
| 剥离路径 | 在转发到后端之前移除基路径。 | 切换开启或关闭。如果启用,“基路径”将在请求到达后端之前被剥离。 | 是 |
| API URL | 最终面向客户端的 API URL。 | 通过组合网关 URL 和基路径自动生成。 | 是 |
| 后端 URL | 将由网关代理的后端服务的地址。 | 输入完整的 URL。HTTP 基础的 API 的必填字段。有关 API 类型的详细说明,请参阅设置。 | 是 |
| Swagger 获取路径 | 从后端获取 Swagger JSON 文档。 | 输入 Swagger 路径(例如,/v3/api-docs)。自动附加到后端 URL。 | 是 |
| 开发者门户发布 | 决定API是否应在开发者门户中列出。 | 复选框。如果选中,API将在开发者门户中可见,并可以在开发者门户中配置为产品。 有关作为产品配置的详细信息,请参阅开发者门户指南。 | 否 |

API 类型设置
当用户选择API类型为HTTP或WebSocket时,他们必须遵循特定的后端URL格式。
Allowed Backend URL Formats:- http://domain.com/
- http://domain.com
- https://domain.com
- http://sub3.sub2.sub1.domain.com
- http://domain.com/path1
- http://domain.com/path1/path2/path3
- http://domain.com:8081
- http://sub.domain.com:8081/path
如果用户选择API类型为AWS Lambda函数集成,他们必须配置AWS凭证以将API与AWS Lambda链接。
Additional Required Fields for AWS Lambda:- Lambda Name: 输入AWS Lambda函数名称。
- AWS Region: 输入部署Lambda函数的AWS区域。
API创建示例:
如果API设置为:
- API类型:HTTP(使用https协议)
- 网关URL:https://your.domain.com
- 基础路径:/myservice
- 后端URL:http://backend.com/backend
- Swagger获取路径:/v2/api-docs
客户端请求的最终API URL将是:https://your.domain.com/myservice
Swagger文档将从:http://backend.com/backend/v2/api-docs获取
例如,如果客户端调用https://your.domain.com/myservice/v1/apis/,它最终将被代理到路径http://backend.com/backend/v1/apis/。
API创建后配置
一旦创建了 API,用户将被引导至 API 详细信息屏幕,在那里他们可以管理创建后的配置或删除 API。
Available Configurations:- API Policies Applying: 设置入站和出站 API 策略。
- Canary Config: 配置基于版本的部署。
- API Documentation: 获取、编辑或更新 Swagger 文档。
- API Testing: 在部署前运行 API 测试。
- API Deployment: 部署 API 以供外部访问。
- Edit API Frontend & Backend: 修改 API URL、基础路径和后端 URL。
- API Deletion: 删除 API。

API 策略应用
用户可以设置策略以控制 API 行为。策略分为:
- Inbound: 在请求到达后端之前修改请求(例如,头部转换、IP 限制)。
- Outbound: 在响应到达客户端之前修改响应(例如,记录、添加头部)。
用户可以在部署前添加或删除策略并配置设置。
Steps:- 点击策略部分的 Edit 图标 以访问 API 策略详细信息配置屏幕。
- 从 Not Applicable 部分添加策略或移除已应用的策略。
- 通过点击策略名称配置策略设置。有关如何为每个策略配置的更多详细信息,请参阅用户指南/APIM 控制台/API 策略。
- 点击 STORING 保存更改。
策略必须单独保存,并且仅在 API 部署后生效。

金丝雀配置
金丝雀配置允许控制 API 版本的逐步发布。用户可以通过金丝雀配置切换启用。
Steps:- 切换金丝雀配置 ON。
- Canary 配置设置:
| Field Name | Input Instructions |
|---|---|
| 后端:URL | 包含 (ver) 变量的后端 URL。示例:http://backend-url-(ver):8081 |
| 基线:版本 | 基线的版本。 |
| 基线:链接 | 当用户在“基线:版本”字段中输入时,自动更新链接的版本。 |
| 基线:权重 (%) | 输入数字。“基线:权重 (%)”字段和“Canary:权重 (%)”的总和为 100。 |
| Canary:版本 | Canary 的版本 |
| Canary:链接 | 当用户在“Canary:版本”字段中输入时,自动更新链接的版本。 |
| Canary:权重 (%) | 输入数字。“基线:权重 (%)”字段和“Canary:权重 (%)”的总和为 100。 |
- 点击 SAVE 应用更改。

用户可以通过 API 管理或 API 详情屏幕稍后编辑 Canary 配置。

API 文档 (Swagger)
用户可以获取或手动编辑 Swagger 文档。
Steps:- 设置 Swagger 检索路径(例如,/v3/api-docs)。
- 点击 GET SWAGGER 获取文档。
- 如有需要,在 Swagger Editor 中编辑 Swagger JSON。
- 点击 SAVE SWAGGER 存储更改。

Swagger 文档与 API 一起部署,可以在侧边栏的 API Document 下访问。
API 测试
用户可以在部署之前测试 API。
Features:- Supported Methods: GET、POST、PUT、DELETE、HEAD、OPTIONS、PATCH。
- Request Parameters: 路径 (/path/(key1))、头部、查询参数、主体。
- Response Analysis: 查看状态、头部和响应体。
要开始测试,请点击 TEST API REQUESTS。

API 部署
API 必须部署以供外部访问。
Steps:- 点击 API DEPLOYMENT。
- 输入部署版本描述。
- 点击 CONFIRMATION 进行部署。
只有最新部署的版本可以被外部访问。

编辑 API 前端和后端
用户可以编辑 API 设置在前端/后端配置。
API 删除
用户可以通过以下方式删除 API:
- 在 API 详情屏幕中点击 Trash icon。
- 在 API 管理屏幕中 Action 下的 Cross icon。
已删除的 API 无法恢复。
