API 开发生命周期

本页面适用于 ApigeeApigee Hybrid

查看 Apigee Edge 文档。

以下部分总结了使用 Apigee 的 API 开发生命周期。

开发 API 代理

Apigee 支持以下迭代式 API 代理开发选项:

如需详细了解 API 代理,请参阅了解 API 和 API 代理

使用 Apigee 进行云端开发

使用 Apigee 提供的 API 代理编辑和调试工具开发 API 代理。在您构建 API 代理时,Apigee 会将您的配置迭代保存为修订版本。

部署 API 代理时,您需要选择一个特定修订版本进行部署。 通常是应部署最新修订版本,如有必要,也可还原到之前的修订版本。请参阅部署 API 代理

要开始使用 Apigee 开发 API 代理,请参阅构建简单的 API 代理

使用 Apigee in VS Code 进行本地开发

使用 Apigee in Visual Studio Code (VS Code) 开发 API 代理,并通过单元测试和手动测试(例如,发送请求并查看结果)验证功能。

完成本地验证后,将 API 代理配置作为归档部署到 Apigee 环境。请参阅部署 API 代理

要开始使用 Apigee in VS Code 在本地开发 API 代理,请参阅使用 Apigee in VS Code 构建您的第一个 API 代理

部署 API 代理

您需要创建要在其中部署 API 代理的环境。不同环境的区别是任意的,每个环境只是由不同的网络地址(网址)识别。这样做的目的是提供一个网域,您可以在其中构建和验证 API 代理,然后再向外部开发者公开 API。如需了解详情,请参阅环境和环境组简介

通过将 API 部署到多个环境,您可以隔离测试环境中使用的 API 代理和生产环境中被外部应用在运行时访问的 API 代理之间的流量。

Apigee 支持在环境中使用以下部署类型:

类型 说明
代理 在 Apigee 开发环境中开发和测试 API 代理,然后将其部署到 Apigee 集成测试和生产环境。请参阅部署 API 代理
归档 使用 Apigee in VS Code 开发和测试可编程 API 代理

添加政策

借助 Apigee,您可以使用政策编排 API 行为,而无需编写任何代码。政策就像一个实现特定受限管理功能的模块。 这些政策旨在让您能够轻松可靠地向 API 添加常见类型的管理功能。政策提供安全、速率限制、转换和中介功能等功能,让您无需自行编写代码和维护此功能。 您还可以编写自定义脚本和代码(例如 JavaScript 应用),它们能够扩展 API 代理功能,让您在 Apigee 政策支持的基本管理功能的基础上创新。如需详细了解 Apigee 政策,请参阅《什么是政策?》

Apigee 为各种功能提供可用的政策,例如流量管理、安全、中介和扩展政策。如需查看 Apigee 中可用政策的完整列表,请参阅政策参考概览

提升到生产环境

您需要选择部署 API 的位置。例如,您可以将修订版本提升到生产环境,以允许开发者开始使用您的 API。同时,您可以在本地或测试环境中迭代多个修订版本,以添加功能或微调政策。准备就绪后,您可以将新修订版本部署到生产环境,覆盖该环境中的现有修订版本。使用此方法,您可以在开发和测试新功能的同时始终为开发者提供 API 的当前修订版本。

使用 Apigee API 编写部署脚本

Apigee 提供 RESTful API,可让您将 API 代理部署和管理集成到组织的软件开发生命周期 (SDLC) 中。例如,为了确保满足安全性、可靠性和一致性要求,在自动化流程中,Apigee API 的一个常见用途是编写脚本或代码,从而以编程方式部署 API 代理,并将其从一个环境提升到另一个环境。

如需了解详情,请参阅 Apigee API

管理环境资源

环境可以隔离数据和资源。例如,您可以在 testproduction 环境中设置不同的缓存,只能由该环境中运行的 API 代理访问。此外,在测试环境中颁发的 API 密钥在生产环境中无效,反之亦然。

为了在提升期间加强控制,建议您只对测试环境中的 API 代理进行迭代,对生产环境中部署的 API 代理尽量少做更改。

为此,您需要确保将与每个环境关联的某些资源配置为在 API 代理配置中保持静态。

  • 键值映射 (KVM):如果范围限定为环境,应确保使用的命名惯例可使 API 代理无需在提升过程中更改配置即可存储数据。如需了解详情,请参阅使用键值映射
  • 目标网址:API 代理在测试和生产期间调用不同的后端网址很常见。您可以使用 TargetServer 配置来创建独立于环境的 TargetEndpoint 配置。如需了解详情,请参阅以下内容:
  • ServiceCallout 目标:服务调用可能会根据环境使用不同的目标,例如,测试环境中的 ServiceCallout 使用演示服务。请参阅 ServiceCallout 政策

如需使 API 代理配置独立于环境,您还可以使用条件语句。使用 environment.name 变量构建的条件语句可用于在强制执行政策或路由到后端网址之前评估当前环境。如需了解详情,请参阅包含流变量的条件