如何为 aws-eventbridge-sqs CDK 构造设置外部 SQS 队列引用?

问题描述 投票:0回答:1

我正在使用 AWS Solutions Constructs 库定义 EventBridge 规则,用于将 EventBus 与 SQS 队列链接,即:https://docs.aws.amazon.com/solutions/latest/constructs/aws-eventbridge-sqs.html

正如文档所述,可以为 CDK 构造创建的 SQS 队列定义参数,也可以传递现有队列的引用。我正在尝试将后面的方法与 Python CDK 应用程序一起使用并使用该参数:

Name                Type
existingQueueObj?   sqs.Queue

问题是,我只能访问队列 ARN,我可以使用该队列 ARN 使用

IQueue
CDK 函数创建
sqs.Queue.from_queue_arn
接口,该函数不符合此处请求的类型,因此我收到以下错误:

TypeError: type of argument existing_queue_obj must be one of (aws_cdk.aws_sqs.Queue, NoneType); got aws_cdk.aws_sqs._QueueBaseProxy instead

有关如何潜在地使用该构造并正确设置对已存在队列的引用的任何提示吗?

amazon-sqs aws-cdk
1个回答
0
投票

Existing
是一个用词不当,它意味着它存在于您的 CDK 应用程序中,而不是由
EventbridgeToSqs
构造创建。您不能使用导入的队列,这就是为什么预期类型是
Queue
,而不是
IQueue

from_queue_arn
返回
IQueue
的实例,而不是
Queue
,并且不能在此处使用。

© www.soinside.com 2019 - 2024. All rights reserved.