在 CDK v2 中找不到 HttpApi 构造

end*_*ama 7 amazon-web-services aws-api-gateway aws-cdk

我正在尝试将 HttpApi 添加到已使用 CDK v2 的项目中。我可以从以下位置检索 HttpApi 类@aws-cdk/aws-apigatewayv2

https://docs.aws.amazon.com/cdk/api/v1/docs/@aws-cdk_aws-apigatewayv2.HttpApi.html

但我无法检索新 v2aws-cdk-lib模块中的构造:

https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_apigatewayv2-readme.html

v2 中的包已移动吗?

另外,HttpApi 和这个https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sam.CfnHttpApi.html有什么区别?

谢谢 :)

fed*_*nev 9

CDK v2 的 L2HttpApi构造位于@aws-cdk/aws-apigatewayv2-alpha. 在 CDK V2 中,实验模块在单独的“alpha”包中发布。

CfnHttpApi是表示CloudFormation资源的L1 构造。在引擎盖下,有一个作为子节点。 - 前缀的结构被发布,因为它们是稳定的。 AWS::ApiGatewayV2::ApiHttpApiCfnHttpApiCfnaws-cdk-lib

在这里可以找到构造:

包裹 CDK版本 结构体
aws-cdk-lib v2 CfnHttpApi(L1,稳定)
@aws-cdk/aws-apigatewayv2-alpha v2 HttpApi(L2,实验)
@aws-cdk/aws-apigatewayv2 v1 HttpApi(L2,实验),CfnHttpApi(L1,稳定)


Kau*_*kar 6

HttpApi 构造的新位置

迁移到 AWS CDK V2

实验性构造在单独的、独立版本控制的包中提供,其名称以 alpha 结尾,并且 alpha 版本号对应于与其兼容的 aws-cdk-lib 的第一个版本。

由于 HttpApi 构造被认为是实验性的,因此它已被移至单独的包中:

链接到构建页面

链接到标记为 alpha 的新实验包概述

CfnHttpApi、CfnApi 和 HttpApi 之间的区别

CfnHttpApi 文档(非实验性)

CfnApi 文档(非实验性)

HttpApi 文档(实验)

CfnHttpApi 和 CfnApi 是 L1 构造,这意味着它们直接转换为单个 CloudFormation 资源块。HttpApi 是一种 L2 构造,通常更复杂,可以转换为一个或多个 CloudFormation 资源块。此关于构造的 CDK 开发人员指南页面提供了有关 L1 和 L2 构造如何工作的更多详细信息。

CfnHttpApi 和 CfnApi 都是创建 HTTP API 的 CloudFormation 资源类型,但 CfnHttpApi 是CfnApi 的AWS SAM版本。引用此页面,AWS SAM 模板是 AWS CloudFormation 模板的扩展,带有一些额外的组件,使它们更易于使用。

  • 差不多两年过去了,我们似乎可以假设 L2 结构将无限期地保持在实验状态? (2认同)