API Hub 中的每个 API 资源都至少有一个与之关联的版本。您可以将版本视为 API 在某个时间点的状态。从根本上说,版本可帮助您根据底层的操作、部署、规范和其他属性集对 API 进行分组和整理,如图 1 所示。
图 1. 每个版本都可以具有操作、部署和其他属性。
在 API Hub 中,版本表示 API 的逻辑分组。通常(但不一定)此分组围绕 API 可以执行的操作进行。例如,假设您有一个宠物商店 API,并且此 API 的第一个版本可让您执行基本任务,例如添加宠物、查找宠物以及从商店中删除宠物。这些是操作示例。
最好是让一个版本包含一组一起部署的 API 操作。例如,宠物商店 API 可能有一个包含添加、查找和删除操作的版本,这些操作均部署到相同的环境。
考虑版本的另一种好思路是它代表 API 提供方对 API 的了解。版本是构建 API 的人员在 API 中加入并希望与其一起部署的特性和功能的集合。
创建版本
假设在 OpenAPI 规范中会捕获您要添加到 API Hub 的 API 的详细信息。如果是这样,您可以将规范添加到 API 版本。执行此操作时,API Hub 会解析规范并从中拉取信息(例如 API 包含的操作),并将这些信息与版本一起存储。如果您没有 OpenAPI 规范,您仍然可以创建版本,但必须使用相关的描述性信息手动填充。API Hub 支持通过 Apigee API 代理自动注册来解析 API 详细信息的另一种情况。
您可以向同一版本上传多个 API 规范文件。
何时创建新版本?
如果向 API 添加了新操作,则可能需要创建新版本,也可能不需要。
假设 API 提供方向某个 API 添加了新操作,并打算将其部署到当前与该版本关联的所有部署。在这种情况下,提供方可以选择不创建该 API 的新版本。另一方面,如果提供方进行了向后不兼容的更改(重大更改),并选择将其与新部署相关联,则您可能需要创建新版本。
您可以看到,API Hub 可让您灵活地定义和组织 API 版本,从而最好地满足您的组织的需求和特定 API 提供方的需求。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-04-02。"],[[["API hub utilizes versions to represent the state of an API at a specific point in time, allowing for the organization of APIs based on operations, deployments, and attributes."],["A version in API hub is a logical grouping of APIs, usually centered around the operations an API can perform, such as adding, finding, and deleting a pet in a Pet Store API example."],["API hub allows the addition of OpenAPI specifications to an API version, from which it will automatically extract information, although versions can also be created manually and populated with relevant information."],["New versions of an API may be created when new operations are added or when there are backwardly incompatible changes, particularly if the changes are associated with new deployments."],["Each API version has system attributes like Lifecycle, Compliance, Accreditation, and Documentation, which can be customized, and users can also define their own custom attributes for each version."]]],[]]