是否有任何 lambda 发布到 sns 主题的 cdk 打字稿示例?

时间:2021-05-28 09:13:33

标签: typescript amazon-web-services aws-lambda aws-cdk

我正在尝试设置 lambda 以接收 dynamo dB 流并将这些数据库更改发布到 sns 主题。我不确定如何使用 cdk 将消息从 lambda 发布到我的主题。有没有这样的例子?

1 个答案:

答案 0 :(得分:0)

aws-cdk 用于创建 AWS 资源。换句话说,您使用它来创建 AWS Labmda、Dynamo DB 表、SNS 主题。然而,一旦这些资源被创建,人们就很少使用 CDK 对其进行操作。

为了向您的 Lambda 内的 SNS 发送消息,请参阅您选择的运行时的 AWS 开发工具包文档。例如,如果您决定在 node.js 中编写 lambda,您可以参考 AWS SDK for node.js

这就是你的 lambda 代码的样子:

import { SNS } from "aws-sdk";

const sns = new SNS();

export const handler = async function(event){
   const params = {
     Message: JSON.stringify({ some: 'payload' }),
     // it is easy to pass reference to the topic as environment variable using aws cdk
     TopicArn: process.env.SOME_TOPIC_ARN 
   };
   await sns.publish(params).promise()
}