订阅
订阅是开发者的 应用程序 和 API 产品 之间的关系,该关系授予应用程序访问权限以使用该产品中的 API。订阅强制实施受控访问:开发者必须先订阅,然后才能创建凭证并发出经过身份验证的 API 请求。
订阅工作流程
订阅工作流程遵循以下步骤:
- 开发者浏览 API Hub 并选择 API 产品。
- 开发者将其应用程序之一订阅到该产品。
- 如果产品启用了自动批准,订阅将立即生效。
- 如果禁用自动批准,订阅将进入待处理状态,管理员必须在提供商门户中批准它。
- 订阅激活后,开发者可以在应用程序内创建凭证来验证 API 请求。
订阅状态
| 状态 | 描述 |
|---|---|
| 等待批准 | 订阅请求已提交,正在等待管理员批准。 |
| 已订阅 | 订阅已激活。开发者可以创建凭证并发出 API 请求。 |
当管理员拒绝待定订阅时,订阅记录将被删除。当开发者或管理员取消有效订阅时,订阅记录也会被删除。
自动批准
每个 API 产品都有一个 subscription_auto_approval 设置:
- 启用:订阅立即设置为
subscribed状态,无需管理员干预。 - 禁用(默认):订阅进入
wait_for_approval状态。管理员必须审核并批准该请求。
审批流程
当订阅需要批准时:
- 创建一条审批记录,事件类型为
api_product_subscription,状态为pending。 - 如果配置了电子邮件通知,审批者(具有适当权限的管理员)会收到电子邮件通知。
- 如果在 API 产品上配置了 Webhook 通知,则调用配置的端点。
- 管理员在提供商门户中审查请求并接受或拒绝它。
- 接受后,订阅状态更改为
subscribed并通知开发者。 - 拒绝后,订阅将被删除并通知开发者。
批量订阅
开发者可以在单个请求中订阅具有多个应用程序的多个 API 产品。系统为每个(应用程序、API 产品)组合创建订阅。每个订阅都根据目标 API 产品的配置独立遵循审批工作流程。
约束条件
- 仅网关型 API 产品支持订阅。无法订阅外部产品,因为 API7 网关不代理其流量。
- 仅已发布的 API 产品接受订阅请求。开发者看不到草稿产品。
- 每个(应用程序、API 产品)对的订阅都是唯一的。不 允许重复订阅。